docker.io/nacos 项目中国可用镜像列表 | 高速可靠的 Docker 镜像资源
1、Docker 拉取镜像
docker pull nacos/nacos-server:v2.1.0
2、创建宿主机挂载目录
mkdir -p /mydata/nacos/logs/
mkdir -p /mydata/nacos/conf/
AI写代码
3、启动nacos并复制文件到宿主机,关闭容器
启动容器
docker run -p 8848:8848 --name nacos -d nacos/nacos-server
复制文件
docker cp nacos:/home/nacos/logs/ /mydata/nacos/
docker cp nacos:/home/nacos/conf/ /mydata/nacos/
docker rm -f nacos
4、mysql中创建nacos所需的表
mysql中新建一个库,名字可自定义,这里就用nacos,从github中找到创建表的文件,在nacos-config库中执行,创建所需的表https://myblogoss2.oss-cn-beijing.aliyuncs.com/dump-nacos-202403131030.sql
5、再次启动nacos
docker run -d --name nacos -p 8848:8848 -p 9848:9848 -p 9849:9849 --privileged=true -e JVM_XMS=256m -e JVM_XMX=256m -e MODE=standalone -v /mydata/nacos/logs/:/home/nacos/logs -v /mydata/nacos/conf/:/home/nacos/conf/ --restart=always nacos/nacos-server
docker run -d \
--name nacos \
-p 8080:8080 \
-p 8848:8848 \
-p 9848:9848 \
-e MODE=standalone \ # 仅保留一次单机模式配置
-e NACOS_AUTH_TOKEN=$(echo -n "nacos_2024_secure_token" | base64) \ # 自动生成Base64,替代占位符
-e NACOS_AUTH_IDENTITY_KEY='custom_key' \ # 自定义身份密钥(替换默认nacos)
-e NACOS_AUTH_IDENTITY_VALUE='custom_value' \
-e SPRING_DATASOURCE_PLATFORM=postgres \ # 连接OpenGauss(兼容PostgreSQL协议)
-e DB_NUM=1 \
-e DB_URL_0=jdbc:postgresql://ca9c4fde1fe1:5432/nacos_db \ # OpenGauss容器ID作为主机名(Docker内部可访问)
-e DB_USER=imsbps \ # 数据库用户名
-e DB_PASSWORD='your_db_password' \ # 替换为实际数据库密码
-e JVM_XMS=256m \ # JVM初始内存
-e JVM_XMX=512m \ # JVM最大内存
-v /mydata/nacos/logs/:/home/nacos/logs \ # 日志持久化
-v /mydata/nacos/conf/:/home/nacos/conf/ \ # 配置文件持久化
--restart=always \ # 自动重启策略
nacos-server:3.0.2
docker run -d \
--name nacos \
-p 8080:8080 \
-p 8848:8848 \
-p 9848:9848 \
-e MODE=standalone \
-e NACOS_AUTH_TOKEN='bmFjb3NfMjAyNF9zZWN1cmVfdG9rZW5fMTIzCg==' \
-e NACOS_AUTH_IDENTITY_KEY='custom_key' \
-e NACOS_AUTH_IDENTITY_VALUE='custom_value' \
-e JVM_XMS=256m \
-e JVM_XMX=512m \
-v /mydata/nacos/logs/:/home/nacos/logs \
-v /mydata/nacos/conf/:/home/nacos/conf/ \
--restart=always \
nacos-server:3.0.2docker run -d --name nacos -p 8080:8080 -p 8848:8848 -p 9848:9848 -e MODE=standalone -e NACOS_AUTH_TOKEN='bmFjb3NfMjAyNF9zZWN1cmVfdG9rZW5fMTIzCg==' -e NACOS_AUTH_IDENTITY_KEY='custom_key' -e NACOS_AUTH_IDENTITY_VALUE='custom_value' -e JVM_XMS=256m -e JVM_XMX=512m -v /mydata/nacos/logs/:/home/nacos/logs -v /mydata/nacos/conf/:/home/nacos/conf/ --restart=always nacos-server:3.0.2
虚拟机需要在防火墙开放相关端口,或者关了防火墙,如果你是云服务器,开放安全组
6、修改配置文件
主要修改的是application.properties文件
vim /mydata/nacos/conf/application.properties
#spring.sql.init.platform=${SPRING_DATASOURCE_PLATFORM:}
spring.sql.init.platform=mysql
### Count of DB:
# db.num=1### Connect URL of DB:
### Connect URL of DB:
#db.num=${MYSQL_DATABASE_NUM:1}
#db.url.0=jdbc:mysql://${MYSQL_SERVICE_HOST}:${MYSQL_SERVICE_PORT:3306}/${MYSQL_SERVICE_DB_NAME}?${MYSQL_SERVICE_DB_PARAM:characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useSSL=false}
db.user.0=${MYSQL_SERVICE_USER}
#db.password.0=${MYSQL_SERVICE_PASSWORD}db.url.0=jdbc:mysql://127.0.0.1:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=nacos
db.password.0=nacos