services: nacos: image: registry.cn-chengdu.aliyuncs.com/reghao/nacos_nacos-server:v2.4.1 restart: always container_name: nacos network_mode: "host" # ports: # - "8848:8848" # 控制台端口 http://localhost:8848/nacos # - "9848:9848" # gRPC 客户端连接端口(Nacos 2.x 必需) # - "9849:9849" # gRPC 服务端同步端口 volumes: - /opt/docker/nacos/logs:/home/nacos/logs - /opt/docker/nacos/data:/home/nacos/data environment: - NACOS_HOME=/home/nacos - NACOS_LOG_PATH=/home/nacos/logs - NACOS_LOG_DIR=/home/nacos/logs - CUSTOM_JVM_OPTS=-Dnacos.logging.path=/home/nacos/logs - NACOS_AUTH_ENABLE=true # 开启鉴权(建议开启,默认密码 nacos/nacos) - NACOS_AUTH_TOKEN=U2VjcmV0S2V5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDE= - NACOS_AUTH_IDENTITY_KEY=myNacosKey - NACOS_AUTH_IDENTITY_VALUE=myNacosValue - MODE=standalone # 单机模式 - JVM_XMS=1g - JVM_XMX=1g - SPRING_DATASOURCE_PLATFORM=mysql # https://github.com/alibaba/nacos/blob/2.4.1/distribution/conf/mysql-schema.sql - MYSQL_SERVICE_HOST=127.0.0.1 - MYSQL_SERVICE_DB_NAME=nacos_config - MYSQL_SERVICE_PORT=3306 - MYSQL_SERVICE_USER=test - MYSQL_SERVICE_PASSWORD=Test_123456 healthcheck: test: ["CMD", "curl", "-f", "http://localhost:8848/nacos/index.html"] interval: 15s timeout: 5s retries: 3 start_period: 60s # Nacos 启动较慢,给足初始化时间 # 1. 资源限制 (Deploy 节点) deploy: resources: limits: cpus: '1.0' # 限制最大占用 1 个 CPU 核心 memory: 2G # 限制最大占用 2GB 内存 reservations: memory: 1G # 容器启动时预留 1GB 内存 # 2. 日志限制 (Logging 节点) # 限制单个日志文件大小为 100MB,最多保留 3 个,防止占满磁盘 logging: driver: "json-file" options: max-size: "100m" max-file: "3"