常用docker-compose.yml服务编排文件编写

version: '2'
services:
  usercenter:
    container_name: -usercenter
    build: ./usercenter
    restart: always
    deploy:
      resources:
         limits:
            memory: 2G
    volumes:
      - ./usercenter/crt:/home/crt
      - ./usercenter/logs:/home/logs/usercenter
      - ./staticFile:/home/userCenter
      - ./usercenter/config:/config
    ports:
      - 60188:60084
  travel:
    container_name: -travel
    build: ./travel
    restart: always
    deploy:
      resources:
         limits:
            memory: 2G
    volumes:
      - ./travel/logs:/home/logs
      - ./staticFile:/home/userCenter
      - ./travel/config:/config
    ports:
      - 60302:8080
  appmain:
    container_name: -appmain
    build: ./appmain
    restart: always
    deploy:
      resources:
         limits:
            memory: 4G
    volumes:
      - ./appmain/logs:/home/logs
      - ./staticFile:/home/userCenter
      - ./appmain/config:/config
    ports:
      - 60303:8080
  dc-gateway:
    container_name: -dc-gateway
    build: ./dc-gateway
    restart: always
    volumes:
      - ./dc-gateway/logs:/log
      - ./dc-gateway/config:/config
    ports:
      - 60304:8090
  dc-protocol:
    container_name: -dc-protocol
    build: ./dc-protocol
    restart: always
    volumes:
      - ./dc-protocol/logs:/log
      - ./dc-protocol/config:/config
      - ./dc-protocol/file:/xcloud-yun-upload
    ports:
      - 60305:8080

  mysql:
    container_name: -mysql
    environment:
        MYSQL_ROOT_PASSWORD: "root"
        MYSQL_USER: 'tom'
        MYSQL_PASS: 'tom'
    image: "docker.io/mysql:8.0.33"
    command: --default-authentication-plugin=mysql_native_password
    volumes:
      - ./mysql/conf/my.cnf:/etc/my.cnf
      - ./mysql/datadir:/var/lib/mysql
      - ./mysql/init:/docker-entrypoint-initdb.d/
    restart: always
    ports:
      - 60186:3306
  redis:
    image: redis
    container_name: -redis
    restart: always
    command: redis-server /etc/redis/redis.conf
    volumes:
      - ./redis/conf/redis.conf:/etc/redis/redis.conf
      - ./redis/datadir:/data
    ports:
      - 60187:6379
  rabbitmq:
    container_name:  -rabbitmq
    build: ./rabbitmq
    environment:
     RABBITMQ_DEFAULT_VHOST: "/"
     RABBITMQ_DEFAULT_USER: "admin"
     RABBITMQ_DEFAULT_PASS: "admin"
    restart: always
    deploy:
      resources:
         limits:
            memory: 2G
    volumes:
      - ./rabbitmq/logs:/var/log/rabbitmq  
    ports:
     - 60198:15672
     - 60199:5672
  emqx:
    container_name: -emqx
    image: emqx:5.0.19
    restart: always
    environment:
      EMQX_NAME: foo_emqx
      EMQX_HOST: 127.0.0.1
    volumes:
      - ./emqx/data:/opt/emqx/data
      - ./emqx/etc:/opt/emqx/etc
      - ./emqx/log:/opt/emqx/log
    ports:
      - 60201:1883
      - 60202:18083
      - 60208:8083
  nginx:
    container_name: -nginx
    image: nginx:1.19.2
    privileged: true
    volumes:
      - ./nginx/conf/nginx.conf:/etc/nginx/nginx.conf
      - ./nginx/log:/var/log/nginx
      - ./front-visual-qlb:/home/xcloud-v3/front-visual-qlb
      - ./front-qlb:/home/xcloud-v3/front-qlb
      - ./staticFile:/home/xcloud-v3/staticFile
    restart: always
    ports:
      - 9080:9080
      - 9081:9081
    #network_mode: host
    deploy:
      resources:
         limits:
            memory: 100M
posted @ 2025-08-06 15:59  超级鲨鱼辣椒  阅读(13)  评论(0)    收藏  举报