下载最新版本

docker pull nacos/nacos-server

docker image ls

启动nacos - 单机模式启动

# 单机模式启动
docker run --env MODE=standalone --name nacos -d -p 8848:8848 -p 9848:9848 -p 9849:9849 nacos/nacos-server

docker ps -a

## 支持数据库的单机模式
docker run --env MODE=standalone --name nacos -d \
-e SPRING_DATASOURCE_PLATFORM=mysql \
-e MYSQL_SERVICE_HOST=192.168.1.100 \
-e MYSQL_SERVICE_PORT=3306 \
-e MYSQL_SERVICE_DB_NAME=nacos \
-e MYSQL_SERVICE_USER=root \
-e MYSQL_SERVICE_PASSWORD=123456 \
-p 8848:8848 -p 9848:9848 -p 9849:9849 nacos/nacos-server

复制配置文件

mkdir -vp /vuser/docker/nacos/logs
mkdir -vp /vuser/docker/nacos/
cd /vuser/docker/nacos/
#复制到容器数据卷-配置文件
docker cp nacos:/home/nacos/conf/ /vuser/docker/nacos/

数据库支持

#数据库Sql文件

cd /vuser/docker/nacos/conf
#查看数据库文件

数据库配置

db.url.0=jdbc:mysql://127.0.0.1:3306/nacos?${MYSQL_SERVICE_DB_PARAM:characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useSSL=false}
db.user.0=root
db.password.0=123456

停止、删除容器

#停止
docker stop nacos
#删除容器
docker rm -f nacos

修改配置支持授权

vim /vuser/docker/nacos/conf/application.properties
#最下面添加如下信息
nacos.core.auth.enabled=true
nacos.core.auth.enable.userAgentAuthWhite=false

#修改配置
nacos.core.auth.plugin.nacos.token.secret.key=${NACOS_AUTH_TOKEN:SecretKeyxxxxxxx}
nacos.core.auth.server.identity.key=${NACOS_AUTH_IDENTITY_KEY:example}
nacos.core.auth.server.identity.value=${NACOS_AUTH_IDENTITY_VALUE:example}

关于的秘钥说明nacos.core.auth.plugin.nacos.token.secret.key

自定义密钥时,推荐将配置项设置为Base64编码的字符串,且原始密钥长度不得低于32字符。例如下面的的 此处本人后面加了几位

启动nacos - 支持授权

docker run -p 8848:8848 \
-p 9848:9848 -p 9849:9849 \
-e NACOS_AUTH_ENABLE=true \
-e MODE=standalone \
-e JVM_XMS=1024m \
-e JVM_XMX=1024m \
-e JVM_XMN=1024m \
-v /vuser/docker/nacos/logs:/home/nacos/logs \
-v /vuser/docker/nacos/conf/:/home/nacos/conf \
--network host \
--privileged=true \
--restart=always \
--name nacos \
-d nacos/nacos-server

参数说明

-p 8848:8848 # 宿主机端口:容器端口
–name nacos # 容器名字
–privileged=true # 使用该参数,container内的root拥有真正的root权限
–network host # 设置属于该容器的网络
–restart=always # 总是重启
-e PREFER_HOST_MODE=hostname # 是否支持 hostname,可选参数为hostname/ip,默认值是当前宿主机的ip
-e MODE=standalone # 使用 standalone模式(单机模式),MODE值有cluster模式/standalone模式两种
-e JVM_XMS=256m # -Xms 为jvm启动时分配的内存
-e JVM_XMX=1024m # -Xmx 为jvm运行过程中分配的最大内存
-d nacos/nacos-server # 后台启动模式及使用的镜像
-v:挂载宿主机的一个目录, 持久化存储的关键所在,将主机目录挂载到容器对应目录,分别是:配置文件、日志文件
–restart=always:容器自动启动参数,其值可以为[no,on-failure,always]
    no为默认值,表示容器退出时,docker不自动重启容器
    on-failure表示,若容器的退出状态非0,则docker自动重启容器,还可以指定重启次数,若超过指定次数未能启动容器则放弃
    always表示,只要容器退出,则docker将自动重启容器

访问

http://ip:8848/nacos [默认用户名和密码:nacos/nacos]
©2019 Somore 豫ICP备19009951号 sqlixiaoli@163.com