version: '3' services: mysql: image: mysql:5.7 container_name: mysql environment: MYSQL_ROOT_PASSWORD: 123456789 MYSQL_DATABASE: 'campus_imaotai' TZ: Asia/Shanghai volumes: - ./mysql/data/:/var/lib/mysql/ - ./mysql/conf/:/etc/mysql/conf.d/ - ./mysql/logs:/logs - ./mysql/campus_imaotai.sql:/docker-entrypoint-initdb.d/campus_imaotai.sql command: [ 'mysqld', '--innodb-buffer-pool-size=80M', '--character-set-server=utf8mb4', '--collation-server=utf8mb4_unicode_ci', '--default-time-zone=+8:00', '--lower-case-table-names=1' ] networks: - campus-net redis: image: redis:6.2.12 container_name: redis environment: TZ: Asia/Shanghai volumes: - ./redis/conf:/redis/config - ./redis/data/:/redis/data/ command: "redis-server /redis/config/redis.conf" networks: - campus-net nginx-web: image: nginx:1.23.4 container_name: nginx-web environment: TZ: Asia/Shanghai ports: - "880:80" volumes: - ./nginx/html:/usr/share/nginx/html - ./nginx/cert:/etc/nginx/cert - ./nginx/conf/nginx.conf:/etc/nginx/nginx.conf - ./nginx/log:/var/log/nginx networks: - campus-net - imaotai campus-server: image: oddfar/campus-imaotai container_name: campus-imaotai environment: TZ: Asia/Shanghai SERVER_PORT: 8160 spring.config.additional-location: /home/campus/conf/application-prod.yml ports: - "8160:8160" volumes: - ./server/conf:/home/campus/conf depends_on: - mysql - redis networks: - campus-net - imaotai entrypoint: /bin/sh -c " \ apt-get update && apt-get install -y iproute2 && \ ip route del default && \ ip route add default via 172.17.0.1 && \ /start-your-app-command" privileged: true networks: campus-net: driver: bridge ipam: config: - subnet: 172.22.0.0/16 gateway: 172.22.0.1 imaotai: external: true