使用 Docker 完成 Nacos 集群部署
481 字
2 分钟
使用 Docker 完成 Nacos 集群部署
使用 Docker 完成 Nacos 集群部署
拉取镜像
docker pull nacos/nacos-server:v2.2.0不要拉
latest标签,生产环境务必指定版本号。
数据库准备
Nacos 集群需要 MySQL 存储配置数据。建议使用 MySQL 5.7。
创建数据库 nacos_config,并执行 Nacos 官方提供的数据库初始化脚本(可在 Nacos 源码的 distribution/conf/nacos-mysql.sql 中找到,包含 config_info、config_info_aggr、users、roles 等核心表)。
创建 Nacos 容器
创建三个 Nacos 实例组成集群。将以下命令中的 IP 地址替换为你的服务器 IP。
节点 1(端口 8848)
docker run -d \ -e PREFER_HOST_MODE=hostname \ -e MODE=cluster \ -e NACOS_APPLICATION_PORT=8848 \ -e NACOS_SERVERS="your-server-ip:8848 your-server-ip:8858 your-server-ip:8868" \ -e SPRING_DATASOURCE_PLATFORM=mysql \ -e MYSQL_SERVICE_HOST=your-server-ip \ -e MYSQL_SERVICE_PORT=3306 \ -e MYSQL_SERVICE_USER=root \ -e MYSQL_SERVICE_PASSWORD=your-password \ -e MYSQL_SERVICE_DB_NAME=nacos_config \ -e NACOS_SERVER_IP=your-server-ip \ -p 8848:8848 -p 9848:9848 -p 9849:9849 \ --name my-nacos1 \ nacos/nacos-server:v2.2.0节点 2(端口 8858)
docker run -d \ -e PREFER_HOST_MODE=hostname \ -e MODE=cluster \ -e NACOS_APPLICATION_PORT=8858 \ -e NACOS_SERVERS="your-server-ip:8848 your-server-ip:8858 your-server-ip:8868" \ -e SPRING_DATASOURCE_PLATFORM=mysql \ -e MYSQL_SERVICE_HOST=your-server-ip \ -e MYSQL_SERVICE_PORT=3306 \ -e MYSQL_SERVICE_USER=root \ -e MYSQL_SERVICE_PASSWORD=your-password \ -e MYSQL_SERVICE_DB_NAME=nacos_config \ -e NACOS_SERVER_IP=your-server-ip \ -p 8858:8858 -p 9858:9858 -p 9859:9859 \ --name my-nacos2 \ nacos/nacos-server:v2.2.0节点 3(端口 8868)
docker run -d \ -e PREFER_HOST_MODE=hostname \ -e MODE=cluster \ -e NACOS_APPLICATION_PORT=8868 \ -e NACOS_SERVERS="your-server-ip:8848 your-server-ip:8858 your-server-ip:8868" \ -e SPRING_DATASOURCE_PLATFORM=mysql \ -e MYSQL_SERVICE_HOST=your-server-ip \ -e MYSQL_SERVICE_PORT=3306 \ -e MYSQL_SERVICE_USER=root \ -e MYSQL_SERVICE_PASSWORD=your-password \ -e MYSQL_SERVICE_DB_NAME=nacos_config \ -e NACOS_SERVER_IP=your-server-ip \ -p 8868:8868 -p 9868:9868 -p 9869:9869 \ --name my-nacos3 \ nacos/nacos-server:v2.2.0验证集群
访问任意节点的 http://ip:port/nacos,默认用户名密码为 nacos/nacos。在”集群管理”页面可以看到三个节点。
Nginx 负载均衡
配置 upstream
在 Nginx Proxy Manager 的安装目录下创建自定义配置:
upstream nacos { server your-server-ip:8848; server your-server-ip:8858; server your-server-ip:8868;}配置反向代理
在 NPM 管理页面添加代理:
Domain: nacos.your-domain.comForward Hostname: 127.0.0.1Forward Port: 80然后在 Advanced 中添加:
location / { proxy_pass http://nacos;}配置 SSL 证书后,即可通过 https://nacos.your-domain.com/nacos 访问 Nacos 管理页面。
注意:如果使用 Nginx Proxy Manager,需要在容器挂载目录的
nginx/custom/下创建http.conf,NPM 会自动引入该文件到全局配置中。
参考
支持与分享
如果这篇文章对你有帮助,欢迎分享给更多人或打赏支持!
使用 Docker 完成 Nacos 集群部署
https://blog.zinzin.cc/posts/docker-nacos-cluster/相关文章智能推荐
1
Docker 镜像与容器导入导出命令详解
Linux运维与部署梳理 docker commit/export/import/save/load 的区别与适用场景,帮你选对正确的命令。
2
Windows Docker Desktop 拉镜像卡住:代理配置踩坑记录
运维部署TUN 模式救不了 Docker、settings-store.json 藏玄机、镜像加速源拖后腿——一次 pull 失败引发的连环排查。
3
服务器日常初始化指南
Linux运维与部署新服务器到手后的安全加固与常用软件安装清单,包含 SSH 安全配置、Docker、NPM 等。
4
Windows Docker 跑 frpc 内网穿透:完整踩坑记录
运维部署接上篇拉镜像的坑,这次是 frp 穿透本身:frpc 端定义代理、写死的配置路径、host.docker.internal 解析成 IPv6、Docker 代理劫持 80 端口、云防火墙放行,一个下午踩了五个坑。
5
Mx Space + Shiro + Nginx Proxy Manager 反向代理部署
教程使用 Nginx Proxy Manager 反向代理部署 Mx Space 前后端,包括后端 core、前端 Shiro 主题的完整教程。
随机文章随机推荐














