Docker部署单机版NacosV3.0版本并使用Nginx代理

一、环境准备

  1. 服务器,我的IP是 192.168.31.159,Centos 7
  2. Docker 版本 Docker version 26.1.4
  3. nacos单机挂载目录(配置、日志),我的是 /root/docker_run/nacos/single_node
  4. 在步骤3的目录下,新建 conf、logs 目录
  5. /root/docker_run/nacos/single_node/conf下新建application.properties文件,内容如下
js 复制代码
#带了一个前缀
server.servlet.context-path=/nacos
#mysql 数据源
spring.sql.init.platform=mysql
db.num=1
db.url.0=jdbc:mysql://192.168.31.159:13306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=root
db.password=admin123

db.pool.config.connectionTimeout=30000
db.pool.config.validationTimeout=10000
db.pool.config.maximumPoolSize=20
db.pool.config.minimumIdle=2

nacos.core.auth.enabled=true
nacos.core.auth.console.enabled=true
nacos.core.auth.system.type=nacos
nacos.core.auth.plugin.nacos.token.secret.key=f005bc063abbb5ca087c07c15f36f5be5e07b94fab995fb1c28a7ce9fd5a20f9
nacos.core.auth.server.identity.key=nacos-single-auth-2025-z
nacos.core.auth.server.identity.value=nacos-single-value-2025-z

二、nacos镜像下载

docker pull nacos/nacos-server:v3.0.3

三、运行Docker镜像

js 复制代码
docker run -d \
 --name nacos-single-node \
 -e MODE=standalone \
 -e NACOS_AUTH_TOKEN=ZjAwNWJjMDYzYWJiYjVjYTA4N2MwN2MxNWYzNmY1YmU1ZTA3Yjk0ZmFiOTk1ZmIxYzI4YTdjZTlmZDVhMjBmOQ== \
 -e NACOS_AUTH_IDENTITY_KEY=nacos-single-auth-2025-z \
 -e NACOS_AUTH_IDENTITY_VALUE=nacos-single-value-2025-z \
 -v /root/docker_run/nacos/single_node/logs:/home/nacos/logs \
 -v /root/docker_run/nacos/single_node/conf:/home/nacos/conf \
 -p 18080:8080 \
 -p 18848:8848 \
 -p 19848:9848 \
 nacos/nacos-server:v3.0.3

运行后可以看到容器,且可以通过 http://192.168.31.159:18080/nacos 进入到Nacos控制台

四、配置Nginx代理

js 复制代码
location ^~ /nacos {
    proxy_pass http://127.0.0.1:18080;  
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
}

nginx -s reload 重启 nginx 后,可以通过 http://192.168.31.159/nacos 就进入到Nacos控制台

相关推荐
Ruci ALYS4 小时前
SpringBoot Maven快速上手
spring boot·后端·maven
java1234_小锋4 小时前
谈谈Ribbon和Feign区别?
后端·spring cloud·ribbon
SamDeepThinking4 小时前
为什么要做性能测试
java·后端·程序员
Rust研习社4 小时前
Rust 的 Box、Rc、Arc 到底怎么选?
开发语言·后端·rust
rADu REME4 小时前
SpringBoot + vue 管理系统
vue.js·spring boot·后端
IT_陈寒4 小时前
JavaScript的异步地狱,我差点没爬出来
前端·人工智能·后端
NEGl DRYN4 小时前
Go基础之环境搭建
开发语言·后端·golang
SamDeepThinking4 小时前
为什么你做技术方案总是漏掉边界情况
java·后端·程序员
Dylan的码园5 小时前
springBoot与Web后端基础
前端·spring boot·后端
fengxin_rou5 小时前
黑马点评项目万字总结:从redis基础到实战应用详解
java·开发语言·分布式·后端·黑马点评