Docker安装启动Nacos2.x
-
拉取镜像(DockerHub里通过tags标签先确定版本信息)
docker pull nacos/nacos-server:v2.2.1
-
github/gitcode找到nacos的sql文件
https://gitcode.net/mirrors/alibaba/nacos/-/tree/develop/config/src/main/resources/META-INF
2.1 本地新建数据库,执行此sql脚本自动创建所需的表
-
同样找到Nacos配置文件application.properties
https://gitcode.net/mirrors/alibaba/nacos/-/blob/develop/distribution/conf/application.properties
3.1 将其放到宿主机目录下,我这里放到了d:/docker/nacos/conf
3.1 修改配置文件(数据库连接和nacos账户信息)
spring.datasource.platform=mysql db.num=1 db.url.0=jdbc:mysql://localhost:3306/nacos-config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=30000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC db.user=nacos db.password=nacos
-
第一次启动报错,找不到nacos-logback.xml
通过docker logs查看启动日志,报错缺失该文件,于是去下载一个,同样放到宿主机的conf目录下
https://gitcode.net/mirrors/alibaba/nacos/-/blob/develop/distribution/conf/nacos-logback.xml
-
第二次启动报错(nacos的权限认证问题)
(2.2.1版本以上) https://www.programminghunter.com/article/42962631892/
解决方式:手动添加默认秘钥
- 需要修改配置文件中的nacos.core.auth.plugin.nacos.token.secret.key这个默认的秘钥
- 填入一个基于Base64编码不低于32位的字符串即可,可以使用随机生成字符串的网站自动生成填入
打开此网址http://tool.pfan.cn/random,输入33位字符串填入即可
-
启动nacsos,登录管理后台查看(端口映射和目录挂载等)
-
启动
docker run -d --name nacos -p 8848:8848 --privileged=true -e JVM_XMS=256m -e JVM_XMX=256m -e MODE=standalone -v d:/docker/nacos/logs/:/home/nacos/logs -v d:/docker/nacos/conf/:/home/nacos/conf/ --restart=always nacos/nacos-server:v2.2.1
-
docker logs imageid查看启动日志,复制访问地址 localhost:8848/nacos/index.html
启动成功的日志:
- 访问登录,账号密码默认 nacos ncaos