Docker安装Nacos使用自定义MySQL

  • Post author:
  • Post category:mysql




注意

如果你使用自定义数据库, 第一次启动Nacos前需要手动初始化

数据库脚本

.



下载



1. 下载Nacos
git clone --depth 1 https://github.com/nacos-group/nacos-docker.git
cd nacos-docker


2. 修改网络

3.1 创建Nacos默认的网络 example_default ,将MySQL容器的网络连接过来。

docker network create example_default
docker network connect example_default mysql_container 

3.2 然后查看mysql_container容器在example_default里的ip是多少

# Linux
docker inspect mysql | grep IPAddress

#Windows
docker inspect mysql | findstr IPAddress


3.修改连接MySQL的IP

找到

/env/nacos-standlone-mysql.env

文件,将上面inspect查看到的ip替换到

MYSQL_SERVICE_HOST

的值。

PREFER_HOST_MODE=hostname
MODE=standalone
SPRING_DATASOURCE_PLATFORM=mysql
MYSQL_SERVICE_HOST=172.18.0.3
MYSQL_SERVICE_DB_NAME=nacos_devtest
MYSQL_SERVICE_PORT=3306
MYSQL_SERVICE_USER=root
MYSQL_SERVICE_PASSWORD=root
# 我这里加了serverTimezone时区,如果不加有可能会出现连接错误
MYSQL_SERVICE_DB_PARAM=characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useSSL=false&serverTimezone=UTC


4.启动容器文件

从官网中下载的文件,找到

nacos-docker\example\standalone-mysql-8.yaml

,去掉mysql的容器

version: "2"
services:
  nacos:
    image: nacos/nacos-server:${NACOS_VERSION}
    container_name: nacos-standalone-mysql
    env_file:
      - ../env/nacos-standlone-mysql.env
    volumes:
      - ./standalone-logs/:/home/nacos/logs
      - ./init.d/custom.properties:/home/nacos/init.d/custom.properties
    ports:
      - "8848:8848"
      - "9848:9848"
      - "9555:9555"
    depends_on:
    # 这里要和自己MySQL容器名称相同
      - mysql80
    restart: on-failure
  # 因为自定义MySQL,所以注释掉
  # mysql:
  #   container_name: mysql
  #   image: nacos/nacos-mysql:8.0.16
  #   env_file:
  #     - ../env/mysql.env
  #   volumes:
  #     - ./mysql:/var/lib/mysql
  #   ports:
  #     - "3306:3306"


5. 创建数据表,然后启动容器


初始化数据表

,然后启动容器

docker-compose -f example/standalone-mysql-8.yaml up



版权声明:本文为Aaren_Jiang原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。