用docker-compose方式部署nacos

官方Demo 感兴趣的同学可以看下官方的demo

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

1.在部署之前我们可以先去github上先复制nacos 需要用到的数据库可以先在自己MySQL 创建数据库和表,它这边默认是nacos_config 库名;

说明:因为官方它这个要内嵌数据库,我们生产一般不会在去为它单独搞一个msql,直接用我们业务现成的。所以需要在我们现有的mysql执行db脚本

  1. sql执行脚本:
  2. https://github.com/alibaba/nacos/blob/develop/distribution/conf/nacos-mysql.sql

2.编辑docker-compose文件

  1. version: "3"
  2. services:
  3. nacos:
  4. image: nacos/nacos-server:1.4.2
  5. container_name: nacos-standalone-mysql
  6. environment:
  7. - PREFER_HOST_MODE=hostname
  8. - SPRING_DATASOURCE_PLATFORM=mysql
  9. - MODE=standalone
  10. - MYSQL_SERVICE_HOST=192.168.8.102 # 这里一般我们用内网ip
  11. - MYSQL_SERVICE_DB_NAME=nacos_config #这是对应的MySQL的数据库名
  12. - MYSQL_SERVICE_PORT=3306
  13. - MYSQL_SERVICE_USER=root
  14. - MYSQL_SERVICE_PASSWORD=123456
  15. - NACOS_APPLICATION_PORT=8848
  16. - MYSQL_SERVICE_DB_PARAM=characterEncoding=utf8&connectTimeout=10000&socketTimeout=30000&autoReconnect=true&useSSL=false
  17. - JVM_XMS=512m
  18. - JVM_MMS=320m
  19. volumes:
  20. - ./standalone-logs/:/home/nacos/logs
  21. ports:
  22. - "8848:8848"
  23. restart: always

插播一句:如何查看服务的内外网ip,一般情况是:执行命令即可
查看外网IP地址:curl ifconfig.me
查看内网IP地址,和window中cmd的ipconfig类似 一般eth0: inet 后面就是内网ip
image.png

3.执行docker-compose up -d 命令

4.启动成功后,查看start.out日志,会发现我们连接外部数据库是ok的

image.png

如果你连接的不是外部数据库,默认是采用嵌入式的数据库则日志启动如下

image.png

END

启动成功以后可以登入nacos的客户端来配置服务的配置
ps:nacos的客户端账户密码默认是账号nacos密码是nacos
地址:http://外网ip:8848/nacos/index.html
官方文档:https://nacos.io/zh-cn/docs/quick-start-docker.html