docker部署nacos无法启动问题

出现该错误nacos Login timeout exceeded. 说明需要配置数据库连接
The server IP list of Nacos is [] 说明是集群没有找到节点
Failed to create database ‘/home/nacos/data/derby-data’, see the next except

拉取镜像:

docker pull nacos/nacos-server
去nacos的github获取最新对应的配置文件复制过来进行修改

新建目录映射配置,如果需要其它的都可以新建比如data等

mkdir -p /home/nacos/logs/ #新建logs目录
mkdir -p /home/nacos/docker-config/ #新建config目录
vim /home/nacos/docker-config/application.properties #如果是新拉的镜像建议去nacos的github获取对应的配置文件复制过来进行修改

如果用这个就不需要复制配置文件,相当于直接传参到配置文件,建议用下面的,方便随时修改配置文件。

docker run -d
-e PREFER_HOST_MODE=hostname
-e MODE=standalone
-e SPRING_DATASOURCE_PLATFORM=mysql
-e MYSQL_SERVICE_HOST=ip
-e MYSQL_SERVICE_PORT=3306
-e MYSQL_SERVICE_USER=nacosConf
-e MYSQL_SERVICE_PASSWORD=nacosConf
-e MYSQL_SERVICE_DB_NAME=nacosconf
-p 8848:8848
–name nacos-standalone-mysql
nacos/nacos-server

下面这个就是把配置文件里的mysql配置放开,而上面的就是直接指定了,问题是都不是单机启动的而是集群

启动后开启权限认证,使用用户名密码登录 ,执行下面命令前配置

/home/nacos/docker-config/application.properties 就是你自己指定的配置文件地址

spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://192.168.1.20:3306/nacos_configcharacterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user=root
db.password=root
nacos.core.auth.enabled=true # 开启认证
nacos.core.auth.server.identity.key=nacos
nacos.core.auth.server.identity.value=nacos
nacos.core.auth.plugin.nacos.token.secret.key=SecretKey012345678901234567890123456789012345678901234567890123456789

运行启动

docker run -d
-e MODE=standalone
-e PREFER_HOST_MODE=hostname
-e JVM_XMS=256m
-e JVM_XMX=256m
-p 8848:8848
-v /home/nacos/logs:/home/nacos/logs
-v /home/nacos/docker-config/application.properties:/home/nacos/conf/application.properties
–name nacos
nacos/nacos-server

常用参数:

-i:以交互模式运行容器,通常与 -t 同时使用
-t:为容器重新分配一个伪输入终端,通常与 -i 同时使用
-p : 端口映射 格式为[主机端口:容器端口]
-d : 后台模式运行
-name : 给容器一个新的名称
-v:挂载主机的目录
-e: username=“ritchie”: 设置环境变量
-m:设置容器使用内存最大值
–env-file=[]:从指定文件读入环境变量

猜你喜欢

转载自blog.csdn.net/weixin_43051544/article/details/132148332