一. 创建nacos数据库:
nacos/nacos-db.sql at master · alibaba/nacos · GitHub
二 下载nacos镜像
docker pull nacos/nacos-server:latest
三 创建临时容器,将初始的配置文件,从临时容器中复制到主机中
docker run -p 8848:8848 --name nacostest -d nacos/nacos-server:latest
四 复制配置文件到宿主机
## 创建conf和logs文件夹
mkdir -p /docker/nacos/conf
mkdir -p /docker/nacos/logs
## 复制conf和logs文件夹
docker cp nacos:/home/nacos/logs/ /docker/nacos/
docker cp nacos:/home/nacos/conf/ /docker/nacos/
五. 删除临时容器
docker stop nacos
docker rm nacos
六. 修改nacos的配置文件application.properties
vim /docker/nacos/conf/application.properties
注意: 如果数据库和nacos都是用docker部署,并且都在同一台服务器上,指定的数据库ip应为内网ip
七. 执行挂载
docker run -d -e MODE=standalone -v /docker/nacos/logs:/home/nacos/logs -v /docker/nacos/conf:/home/nacos/conf -p 8848:8848 -p 9848:9848 -p 9849:9849 --name nacos --restart=always nacos/nacos-server:latest
这里添加了9848和9849的端口映射,是因为Nacos2.0版本相比1.X新增了gRPC的通信方式,因此需要增加2个端口。新增端口是在配置的主端口(server.port)基础上,进行一定偏移量自动生成。
端口 与主端口的偏移量 描述
9848 1000 客户端gRPC请求服务端端口,用于客户端向服务端发起连接和请求
9849 1001 服务端gRPC请求服务端端口,用于服务间同步等.
之前忘记开这两个端口,导致服务一直连不上客户端.
八 查看容器内nacos日志
docker logs -f nacos