docker compose部署单机nacos

107 阅读1分钟

docker compose文件

nacos官网部署文档

  1. vi nacos.yml加入以下内容
国内镜像地址:nacos-registry.cn-hangzhou.cr.aliyuncs.com/nacos/nacos-server:v2.4.2
services:  
  nacos:  
    image: nacos/nacos-server:v2.4.2  
    container_name: nacos  
    environment:  
      TZ: 'Asia/Shanghai'  
    volumes:  
      - /srv/nacos/conf/application.properties:/home/nacos/conf/application.properties  
      - /srv/nacos/logs/:/home/nacos/logs  
    ports:  
      - "8848:8848"  
      - "9848:9848"  
    restart: always  
    networks:  
      - nacos-n  
    logging:  
      driver: "json-file"  
      options:  
        max-size: "20m"  
        max-file: "3"   
    deploy:  
      resources:  
        limits:  
          memory: 1g  
          cpus: "0.5"  
  
networks:  
  nacos-n:  
    driver: bridge

application.properties配置(修改数据库为自己的)

mkdir -p /srv/nacos/conf vi /srv/nacos/conf/application.properties


server.servlet.contextPath=/nacos
server.error.include-message=ALWAYS
server.port=8848
spring.sql.init.platform=mysql
db.num=1
db.url.0=jdbc:mysql://192.168.31.167:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC&useSSL=false&allowPublicKeyRetrieval=true
db.user.0=root
db.password.0=123456
db.pool.config.connectionTimeout=30000
db.pool.config.validationTimeout=10000
db.pool.config.maximumPoolSize=20
db.pool.config.minimumIdle=2

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.metrics.export.elastic.enabled=false
management.metrics.export.influx.enabled=false

server.tomcat.accesslog.enabled=true
server.tomcat.accesslog.max-days=30
server.tomcat.accesslog.pattern=%h %l %u %t "%r" %s %b %D %{User-Agent}i %{Request-Source}i
server.tomcat.basedir=file:.
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=true
nacos.core.auth.caching.enabled=true
nacos.core.auth.enable.userAgentAuthWhite=false
nacos.core.auth.server.identity.key=nacos
nacos.core.auth.server.identity.value=123456
nacos.core.auth.plugin.nacos.token.expire.seconds=18000
nacos.core.auth.plugin.nacos.token.secret.key=SecretKey012345678901234567890123456789012345678901234567890123456789

nacos.istio.mcp.server.enabled=false

# 单机部署不需要启用集群,保留默认设置
nacos.core.cluster.enabled=false

初始化脚本

mysql初始化脚本

权限设置 chmod -R 766 /srv/nacos/

启动容器 docker compose -f ./nacos.yml up -d

访问http://ip:8848/nacos

image.png