0
点赞
收藏
分享

微信扫一扫

Nacos Docker 部署指南

鲤鱼打个滚 2021-09-21 阅读 80

Nacos Docker 部署指南

前言

Nacos Server的docker镜像的build源码,以及Nacos server 在Docker单机运行部署案例。

Naocs项目目录

|--build:nacos 镜像制作的源码
|--env: docker compose 环境变量文件
|--example: docker-compose 编排例子

运行环境

  • Centos 8.0

  • Docker

  • MYSQL 8.0

配置

4.1 克隆项目

git clone --depth 1 https://github.com/nacos-group/nacos-docker.git
cd nacos-docker-master/example

4.2 拷贝文件Docker指定挂载目录

1,将 nacos-docker-master/env/nacos-standlone-mysql.env 文件 拷贝至docker 需要挂载的目录
3,将 nacos-docker-master/env/mysql.env 文件 拷贝至docker 需要挂载的目录
4,将 nacos-docker-master/example/init.d 文件夹 拷贝至docker 需要挂载的目录
5,将 nacos-docker-master/example/plugins 文件夹 拷贝至docker 需要挂载的目录

4.2 修改 mysql.env

​ 一般默认即可,不建议进行修改。

vim  nacos-docker-master/env/mysql.env

MYSQL_ROOT_PASSWORD=root # root 密码
MYSQL_DATABASE=nacos_devtest # nacos 表
MYSQL_USER=nacos # nacos 用户

4.3 修改 nacos-standlone-mysql.env

​ 一般默认即可,不建议进行修改

vim  nacos-docker-master/env/nacos-standlone-mysql.env

PREFER_HOST_MODE=hostname # 是否支持主机名主机名/ IP默认IP
MODE=standalone # 系统启动方式: 集群/单机
SPRING_DATASOURCE_PLATFORM=mysql # 独立支持mysql /mysql /空默认为空
MYSQL_SERVICE_HOST=mysql # mysql主机
MYSQL_SERVICE_DB_NAME=nacos_devtest # 数据库名称
MYSQL_SERVICE_PORT=3306 # mysql数据库端口
MYSQL_SERVICE_USER=nacos # 数据库的用户名
MYSQL_SERVICE_PASSWORD=nacos # 数据库密码

4.4 创建Docker 网络及编辑standalone-mysql-8.yaml

​ 创建容器间网络,方便两个容器之间进行通信

docker network create -d bridge --subnet  172.16.238.0/16 net

​ 编辑 standalone-mysql-8.yaml

vim nacos-docker-master/example/standalone-mysql-8.yaml

version: "2"
services:
nacos:
image: nacos/nacos-server:latest
container_name: nacos
env_file:
- /vdb/data/nacos/env/nacos-standlone-mysql.env # 4.2 中 相对应挂载目录
volumes:
- /vdb/data/nacos/plugins/mysql/:/home/nacos/plugins/mysql/ # 4.2 中相对应挂载目录挂载目录
- /vdb/data/nacos/standalone-logs/:/home/nacos/logs # nacos logs 挂载
- /vdb/data/nacos/init.d/custom.properties:/home/nacos/init.d/custom.properties # 初始化
ports:
- "8848:8848"
- "9555:9555"
depends_on: # 依赖启动
- mysql
restart: always
networks: # 使用下方定义网络
net:
ipv4_address: 172.16.238.12
mysql:
container_name: mysql-8.0
image: nacos/nacos-mysql:8.0.16
env_file:
- /vdb/data/nacos/env/mysql.env # 4.2 中相对应挂载目录挂载目录
volumes:
- /vdb/data/mysql:/var/lib/mysql # 挂载mysql日志以及db文件
ports:
- "3306:3306"
restart: always
networks: # 使用下方定义网络
net:
ipv4_address: 172.16.238.11

networks: # 自定义网络
net:
external: true

使用 Nacos

5.1 Docker Compose 编译运行

docker-compose -f example/standalone-mysql-8.yaml up # 加入 -d 后台启动

​ 出现日志说明成功启动。

5.2 访问 Nacos 并使用

  • ​ 访问
  curl 127.0.0.1:8848/nacos # 不出现报错现象说明已可以正常访问
  • ​ 服务注册
  curl -X PUT 'http://127.0.0.1:8848/nacos/v1/ns/instance?serviceName=nacos.naming.serviceName&ip=20.18.7.10&port=8080'
  • ​ 服务发现
  shell curl -X GET 'http://127.0.0.1:8848/nacos/v1/ns/instances?serviceName=nacos.naming.serviceName'
  • 在浏览器中打开Nacos 控制台
  link:http://127.0.0.1:8848/nacos/

结束语

  1. 其中与Nacos 配合使用的是Dubbo。
  2. 在安装过程中如有不懂,可联系作者。
举报

相关推荐

0 条评论