【Docker学习】—— docker-compose部署之nacos

前言

   基于若依框架,慢慢学习,总结笔记
   该篇文章,是nacos单体部署

1.构建nacos文件目录结构

在这里插入图片描述

2.nacos配置文件的路径及内容

在这里插入图片描述
注意:nacos在2.1.0之后的版本对配置文件内的参数key做了修改,根据所部署的版本使用正确的配置文件

spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://mysql.host:3306/数据库名?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true

db.user= ***** # 数据库账号
db.password= ***** # 数据库密码

nacos.naming.empty-service.auto-clean=true
nacos.naming.empty-service.clean.initial-delay-ms=50000
nacos.naming.empty-service.clean.period-time-ms=30000

management.endpoints.web.exposure.include=*

management.metrics.export.elastic.enabled=false
management.metrics.export.influx.enabled=false

server.tomcat.accesslog.enabled=true
server.tomcat.accesslog.pattern=%h %l %u %t "%r" %s %b %D %{User-Agent}i %{Request-Source}i

server.tomcat.basedir=/home/nacos/logs

nacos.security.ignore.urls=/,/error,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.ico,/console-ui/public/**,/v1/auth/**,/v1/console/health/**,/actuator/**,/v1/console/server/**

nacos.core.auth.system.type=nacos
nacos.core.auth.enabled=false
nacos.core.auth.default.token.expire.seconds=18000
nacos.core.auth.default.token.secret.key=SecretKey012345678901234567890123456789012345678901234567890123456789
nacos.core.auth.caching.enabled=true
nacos.core.auth.enable.userAgentAuthWhite=false
nacos.core.auth.server.identity.key=serverIdentity
nacos.core.auth.server.identity.value=security

nacos.istio.mcp.server.enabled=false

3.dockfile路径及内容

在这里插入图片描述

# 基础镜像
FROM nacos/nacos-server:v2.0.4
# author
MAINTAINER nanjing-project

# 复制conf文件到路径
COPY ./conf/application.properties /home/nacos/conf/application.properties

4.在最外层创建环境变量文件(参考上面截图,创建在home层级下)

  • 文件名:hosts-prod(用于docker-compose等文件获取统一环境变量)
127.0.0.1 master

本机内网IP nacos.host
本机内网IP mysql.host

  • 文件名:prod.env(用于sh脚本使用docker-compose启动时的环境变量设置)
version=1.0.0 #当前版本
active=prod  #测试环境test 生产环境prod

5.docker-compose文件

version : '3.8'
services:
  nanjing-project-nacos:
    container_name: nanjing-project-nacos
    image: nacos/nacos-server:v2.0.4
    build:
      context: ./nacos
    network_mode: "host" # host 网络模式
    environment:
      - MODE=standalone
    volumes:
      - ./nacos/logs/:/home/nacos/logs
      - ./nacos/conf/application.properties:/home/nacos/conf/application.properties
      - ./../hosts-${active}:/etc/hosts
    ports:
      - "8848:8848"
      - "9848:9848"
      - "9849:9849"
    restart: always

6.编写sh执行脚本

docker-compose -f docker-compose-nacos.yml  --env-file ./../prod.env -p nacos down
docker-compose -f docker-compose-nacos.yml  --env-file ./../prod.env -p nacos build
docker-compose -f docker-compose-nacos.yml  --env-file ./../prod.env -p nacos up -d

接下来执行sh脚本就好啦,注意观察是否部署成功

猜你喜欢

转载自blog.csdn.net/weixin_43387699/article/details/131817522
今日推荐