一、安装 nacos
1.拉取镜像
使用如下指令拉取镜像
docker pull nacos/nacos-server
拉取完成后,可以使用以下命令查看是否拉取到对应的镜像,默认拉取最新镜像
docker images
2.新建挂载文件目录
mkdir -p /home/ubuntu/nacos/conf/
mkdir -p /home/ubuntu/nacos/logs/
mkdir -p /home/ubuntu/nacos/data/
3.启动 nacos 容器
docker run -p 8848:8848 --name nacos -d nacos/nacos-server
4.挂载文件
docker cp nacos:/home/nacos/conf/ /home/ubuntu/nacos/
docker cp nacos:/home/nacos/logs/ /home/ubuntu/nacos/
# data目录可能报错,之后可能会用的
docker cp nacos:/home/nacos/data/ /home/ubuntu/nacos/
5.删除容器
docker rm -f nacos
二、安装 mysql 数据库
1.创建数据库挂载文件
mkdir -p ~/mysql57/data
mkdir -p ~/mysql57/conf
2.启动容器
docker run -d \
--name mysql57 \
-p 3307:3306 \
-e MYSQL_ROOT_PASSWORD=root \
-v ~/mysql57/data:/var/lib/mysql \
-v ~/mysql57/conf:/etc/mysql/conf.d \
mysql:5.7
3.复制文件
在 nacos 文件挂载目录中复制 mysql-schema.sql 文件到 mysql 中 nacos-config 数据库
读取成功
三、重启 nacos 服务
1.修改配置文件
找到挂载文件目录下的 application.properties 文件
文件中替换对应内容
spring.sql.init.platform=mysql
db.num=1
db.url.0=jdbc:mysql://172.17.0.2:3307/nacos-config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=30000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user=root
db.password=root
这里的数据库的 ip 为下方命令行命令所得
docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' mysql57
2.鉴权关闭
2.1关闭鉴权(不使用鉴权)
将 application.properties 文件中的 auth 相关字段置为 false
2.2.重新创建容器
docker run -d --name nacos \
-p 8848:8848 \
-p 9848:9848 \
-p 9849:9849 \
-e MODE=standalone \
-e NACOS_AUTH_ENABLE=false \
-e NACOS_AUTH_TOKEN=dGVzdDp0ZXN0 \ #该参数自定义值即可(基于关闭鉴权的要求)
-e NACOS_AUTH_IDENTITY_KEY=serverIdentity \ #该参数自定义值即可(基于关闭鉴权的要求)
-e NACOS_AUTH_IDENTITY_VALUE=security \ #该参数自定义值即可(基于关闭鉴权的要求)
-e JVM_XMS=512m \
-e JVM_XMX=512m \
-e JVM_XMN=256m \
-e JVM_MS=128m \
-e JVM_MMS=256m \
-v /home/ubuntu/nacos/conf:/home/nacos/conf \
-v /home/ubuntu/nacos/logs:/home/nacos/logs \
-v /home/ubuntu/nacos/data:/home/nacos/data \
nacos/nacos-server
访问 http://localhost:8848
注:不要加 /nacos
,因为 Nacos 3.x 中前端页面默认在根路径 /
下。
3.鉴权开启
3.1开启鉴权
将 application.properties 文件中的 auth 相关字段置为 true
3.2.重新创建容器
docker run -d --name nacos \
-p 8848:8848 \
-p 9848:9848 \
-p 9849:9849 \
-e MODE=standalone \
-e NACOS_AUTH_ENABLED=true \ #这里需要开启,下方 TOKEN 需要32位以上
-e NACOS_AUTH_TOKEN=VGhpc0lzTXlDdXN0b21TZWNyZXRLZXkwMTIzNDU2Nzg5IUA= \
-e NACOS_AUTH_IDENTITY_KEY=serverIdentity \
-e NACOS_AUTH_IDENTITY_VALUE=security \
-e JVM_XMS=512m \
-e JVM_XMX=512m \
-e JVM_XMN=256m \
-e JVM_MS=128m \
-e JVM_MMS=256m \
-v /home/ubuntu/nacos/conf:/home/nacos/conf \
-v /home/ubuntu/nacos/logs:/home/nacos/logs \
-v /home/ubuntu/nacos/data:/home/nacos/data \
nacos/nacos-server
访问 http://localhost:8848
输入账号密码同为 nacos,登录成功