# Docker 安装 Alibaba Nacos
# 1. 准备工作
下载 nacos 的 docker 镜像
docker pull nacos/nacos-server:2.0.3
docker-nacos 的 “日志文件” 在容器中的
/home/nacos/logs
docker-nacos 的 “配置文件” 是容器中的
/home/nacos/init.d/custom.properties
# 2. docker-compose 启动
version: '3'
services:
nacos:
image: nacos/nacos-server:2.0.3
container_name: nacos-server
network_mode: "host"
mem_limit: 2048m
environment:
- PREFER_HOST_MODE=hostname # 如果支持主机名可以使用 'hostname',否则使用 'ip' ,默认 'ip' 。
- MODE=standalone
- JVM_XMX=1024m # jvm 最大内存
- JVM_XMS=1024m # jvm 启动(初始化)时占用内存
volumes:
- /etc/localtime:/etc/localtime:ro
- ~/docker/8848/logs/:/home/nacos/logs
# ports: # "host" 方式不用映射端口
# - "8848:8848"
# - "9848:9848"
# - "9555:9555"
# 3. 整合 mysql 使用
Nacos Server 使用的是内嵌数据库 derby ,如果你想使用 “外部” 的数据库(例如,mysql),那么需要配置成如下:
version: "3"
services:
nacos:
image: nacos/nacos-server:2.0.3
container_name: nacos-server
network_mode: "host"
mem_limit: 2048m
environment:
- PREFER_HOST_MODE=hostname
- MODE=standalone
- SPRING_DATASOURCE_PLATFORM=mysql
- MYSQL_SERVICE_HOST=192.172.0.24 # mysql 所在 ip
- MYSQL_SERVICE_PORT=3306 # mysql 所在端口
- MYSQL_SERVICE_DB_NAME=nacos_config # nacos 使用的数据库
- MYSQL_SERVICE_USER=root # 数据库用户名
- MYSQL_SERVICE_PASSWORD=123456 # 数据库密码
- MYSQL_SERVICE_DB_PARAM=characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useSSL=false
- JVM_XMX=1024m # jvm 最大内存
- JVM_XMS=1024m # jvm 启动(初始化)时占用内存
volumes:
- /etc/localtime:/etc/localtime:ro
- ~/docker/8848/logs/:/home/nacos/logs
# ports: # "host" 方式不用映射端口
# - "8848:8848"
# - "9848:9848"
# - "9555:9555"
depends_on:
- mysql
上述配置中,nacos 会连接 192.172.0.24:3306 的 nacos_config 数据库。
你可以在 Nacos 上添加一个配置项目信息,然后到 mysql 中查询 config_info
表来进行验证。