• Docker部署 Nacos


    1.1、Nacos 简介

    Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。

    2.1、安装 Docker

    CentOS7 安装 Docker

    2.2、安装 MySQL8

    从 Nacos 1.3.1 版本开始,数据库存储已经升级到8.0,并且它向下兼容
    Docker 安装 MySQL 8

    2.3、创建 bridge 网络并指定 IP 区间

    # 创建自定义网络
    docker network create --driver bridge --subnet 172.0.0.0/16 woniu_network
    # 查看已存在网络
    docker network ls
    
    • 1
    • 2
    • 3
    • 4

    2.4、数据库配置

    2.4.1、创建数据库

    2.4.2、创建用户

    用户:nacos,密码:nacos
    注意:nacos 用户权限问题

    2.4.3、下载SQL文件

    下载数据库文件

    nacos-db.sql

    #进入容器
    docker exec -it nacos /bin/bash
    
    #修改 conf/application.properties 内容如下:
    vim conf/application.properties
    
    # spring
    server.contextPath=/nacos
    server.servlet.contextPath=/nacos
    server.port=8848
    management.metrics.export.elastic.enabled=false
    management.metrics.export.influx.enabled=false
    server.tomcat.accesslog.enabled=true
    server.tomcat.accesslog.pattern=%h %l %u %t "%r" %s %b %D %{User-Agent}i
    server.tomcat.basedir=
    nacos.security.ignore.urls=/,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.ico,/console-fe/public/**,/v1/auth/login,/v1/console/health/**,/v1/cs/**,/v1/ns/**,/v1/cmdb/**,/actuator/**,/v1/console/server/**
    spring.datasource.platform=mysql
    db.num=1
    db.url.0=jdbc:mysql://:/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
    db.user=root
    db.password=password
    
    #退出容器
    exit
    
    #重启容器
    docker restart nacos
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28

    2.5、创建数据和配置存放目录

    # 创建 nacos 配置存放目录
    mkdir -p /home/docker/nacos/conf  && chown -R 200 /home/docker/nacos/conf
    
    # 创建 nacos 日志存放目录
    mkdir -p /home/docker/nacos/logs  && chown -R 200 /home/docker/nacos/logs
    
    # 创建 nacos 数据存放目录
    mkdir -p /home/docker/nacos/data  && chown -R 200 /home/docker/nacos/data
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    2.6、查询 Docker Nacos 版本

    通过 Docker Hub 查询 Nacos 版本,选择最后版本,如下图:

    3.1、运行 Nacos

    docker run -d -p 8848:8848 \
    --name nacos \
    --network woniu_network \
    --ip 172.0.0.28 \
    --env MODE=standalone \
    --env SPRING_DATASOURCE_PLATFORM=mysql \
    --env MYSQL_SERVICE_HOST=172.0.0.5 \
    --env MYSQL_SERVICE_PORT=3306 \
    --env MYSQL_SERVICE_DB_NAME=nacos \
    --env MYSQL_SERVICE_USER=nacos \
    --env MYSQL_SERVICE_PASSWORD=nacos \
    nacos/nacos-server:latest
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    3.2、复制相关文件

    # 把容器中的 nacos 文件复制出来
    docker cp -a nacos:/home/nacos /home/docker/
    
    # 删除 nacos 容器
    docker rm -f nacos
    
    • 1
    • 2
    • 3
    • 4
    • 5

    3.3、自定义启动 Nacos

    docker run -d -p 8848:8848 \
    --name nacos \
    #--network woniu_network \
    #--ip 172.0.0.28 \
    --env MODE=standalone \
    --env SPRING_DATASOURCE_PLATFORM=mysql \
    --env MYSQL_SERVICE_HOST=172.0.0.5 \
    --env MYSQL_SERVICE_PORT=3306 \
    --env MYSQL_SERVICE_DB_NAME=nacos \
    --env MYSQL_SERVICE_USER=nacos \
    --env MYSQL_SERVICE_PASSWORD=nacos \
    -v /home/docker/nacos/conf:/home/nacos/conf \
    -v /home/docker/nacos/logs:/home/nacos/logs \
    -v /home/docker/nacos/data:/home/nacos/data \
    nacos/nacos-server:latest
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    自定义启动 Nacos 参数介绍,不要用这个

    # 指定 nacos 对外映射端口,例如:8000:8848
    docker run -d -p 8848:8848 \
    
    # docker 容器名称
    --name nacos \
    
    # 自定义分配网络,可忽略
    --network woniu_network \
    
    # 自定义分配 IP 地址,可忽略
    --ip 172.0.0.28 \
    
    # nacos 单机实例
    --env MODE=standalone \
    
    # nacos 数据源 MySQL
    --env SPRING_DATASOURCE_PLATFORM=mysql \
    
    # MySQL 主机地址,记得改成自己数据库地址
    --env MYSQL_SERVICE_HOST=172.0.0.5 \
    
    # MySQL 端口号
    --env MYSQL_SERVICE_PORT=3306 \
    
    # MySQL 数据库名称,记得在对应的数据库执行从 github 下载的 SQL 文件
    --env MYSQL_SERVICE_DB_NAME=nacos \
    
    # MySQL 用户名称,例如:root
    --env MYSQL_SERVICE_USER=nacos \
    
    # MySQL 服务密码,例如:123456
    --env MYSQL_SERVICE_PASSWORD=nacos \
    
    # docker 文件映射,把 nacos 容器中文件和本地路径映射起来,方便操作和持久化
    # nacos 配置文件目录
    -v /home/docker/nacos/conf:/home/nacos/conf \
    
    # nacos 日志文件目录
    -v /home/docker/nacos/logs:/home/nacos/logs \
    
    # nacos 数据文件目录
    -v /home/docker/nacos/data:/home/nacos/data \
    
    # 指定 docker nacos 版本,示例:nacos/nacos-server:v2.0.4
    nacos/nacos-server:latest
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46

    3.4、删除 Nacos

    # 删除 nacos 容器
    docker rm -f nacos
    
    • 1
    • 2

    4.1、登录界面

    Nacos 控制台,默认用户名:nacos,默认密码:nacos ,点击登录

    4.2、首页

  • 相关阅读:
    详解欧拉计划第220题:海韦龙形曲线
    FPGA UDP RGMII 千兆以太网(2)IDDR
    泛型边界的问题
    element ui 里面只能输入input 数字 +限制长度
    LearnOpenGL学习笔记——延迟着色法
    Java面向对象回顾
    详解联邦学习中的异构模型集成与协同训练技术
    Android 缓存清理实现工具类
    用于验证的verilog语法--0
    lvs负载均衡、LVS集群部署
  • 原文地址:https://blog.csdn.net/github_36665118/article/details/127767127