上篇文章我选择确定了基础的版本,这篇文章将用docker 部署nacos 服务
nacos
一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。
如果你使用过spring cloud 那么你就知道 nacos 的功能涵盖了 Spring Cloud Config、Spring Cloud Bus、Eureka ,而且还更好用。
这是官网的描述,总之很牛逼就对了。
地址:nacos官网
打开官网,因为我要使用docker 部署,所以再官网找相关示例
嗯文档还是比较全的,对新手很友好,像我这样的菜鸟都能看懂了。
打开官方给的示例项目地址,https://github.com/nacos-group/nacos-docker.git
在认真阅读了这个mysql5.7的示例后,我花了三秒钟写出了docker-compose文件(●ˇ∀ˇ●)
spring-cloud-alibaba-nacos.yml
version: "2"
services:
nacos:
image: nacos/nacos-server:latest
container_name: nacos-standalone-mysql
env_file:
- ./env/nacos-standlone-mysql.env
volumes:
# 日志目录
- ./nacos/standalone-logs/:/home/nacos/logs
- ./init.d/custom.properties:/home/nacos/init.d/custom.properties
ports:
- "8848:8848"
- "9555:9555"
depends_on:
- mysql
restart: on-failure
mysql:
container_name: mysql
image: nacos/nacos-mysql:5.7
env_file:
- ./env/mysql.env
volumes:
- /dockerData/mysql/nacos-mysql5.7/data:/var/lib/mysql
ports:
- "3306:3306"
不是在说nacos 这里面怎么有个mysql ?因为nacos 自带的是个内存数据库,重启后配置就没了,所以为了持久化配置,这里需要一个mysql。需要注意的是env_file和volumes 的配置,我偷懒直接把示例项目里的文件整下来了,名字也懒得改,对我就是这么懒,只将mysql 数据库的挂载目录挂载到我本机的
/dockerData/mysql/nacos-mysql5.7/data 目录下,
唯一需要改的nacos-standlone-mysql.env文件
PREFER_HOST_MODE=hostname
MODE=standalone
SPRING_DATASOURCE_PLATFORM=mysql
MYSQL_SERVICE_HOST=192.168.101.129
MYSQL_SERVICE_DB_NAME=nacos_devtest
MYSQL_SERVICE_PORT=3306
MYSQL_SERVICE_USER=nacos
MYSQL_SERVICE_PASSWORD=nacos
MYSQL_SERVICE_HOST 需要修改成你的 ip
一切就绪,在linux 当前yml文件所在目录上执行命令
docker-compose -f spring-cloud-alibaba-nacos.yml up -d
如果没有错误,你访问http://你的nacos所在主机ip:8848/nacos/#/login
就能看到如下界面
默认的账号/密码 nacos/nacos