RuoYi-Cloud/docker/docker-compose.yml

182 lines
4.2 KiB
YAML

version : '3.8'
services:
lynn-nacos:
container_name: lynn-nacos
image: nacos/nacos-server:latest
build:
context: ./nacos
environment:
- MODE=standalone
volumes:
- ./nacos/logs/:/home/nacos/logs
- ./nacos/conf/application.properties:/home/nacos/conf/application.properties
ports:
- "8848:8848"
- "9848:9848"
- "9849:9849"
depends_on:
- lynn-mysql
links:
- "lynn-mysql:database" #作为主机的别名访问,可用于数据库的连接字符串中
lynn-mysql:
container_name: lynn-mysql
image: mysql:5.7
build:
context: ./mysql
ports:
- "3306:3306"
volumes:
- ./mysql/conf:/etc/mysql/conf.d
- ./mysql/logs:/logs
- ./mysql/data:/var/lib/mysql
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'
]
environment:
MYSQL_DATABASE: 'lynn-cloud-db'
MYSQL_ROOT_PASSWORD: lynntech
lynn-redis:
container_name: lynn-redis
image: redis
build:
context: ./redis
ports:
- "6379:6379"
volumes:
- ./redis/conf/redis.conf:/home/lynn/redis/redis.conf
- ./redis/data:/data
command: redis-server /home/lynn/redis/redis.conf
lynn-nginx:
container_name: lynn-nginx
image: nginx
build:
context: ./nginx
ports:
- "808:80"
volumes:
- ./nginx/html/dist:/home/lynn/projects/lynn-ui
- ./nginx/conf/nginx.conf:/etc/nginx/nginx.conf
- ./nginx/logs:/var/log/nginx
- ./nginx/conf.d:/etc/nginx/conf.d
#depends_on:
#- lynn-gateway
links:
- lynn-gateway
lynn-gateway:
container_name: lynn-gateway
build:
context: lynn-cloud/gateway
dockerfile: dockerfile
ports:
- "8080:8080"
depends_on:
- lynn-redis
links:
- lynn-redis
- lynn-nacos
- lynn-mysql
lynn-auth:
container_name: lynn-auth
build:
context: lynn-cloud/auth
dockerfile: dockerfile
ports:
- "9200:9200"
depends_on:
- lynn-redis
links:
- lynn-redis
- lynn-nacos
- lynn-mysql
lynn-modules-system:
container_name: lynn-modules-system
build:
context: lynn-cloud/modules/system
dockerfile: dockerfile
ports:
- "9201:9201"
depends_on:
- lynn-redis
- lynn-mysql
links:
- lynn-redis
- lynn-nacos
- lynn-mysql
lynn-modules-gen:
container_name: lynn-modules-gen
build:
context: lynn-cloud/modules/gen
dockerfile: dockerfile
ports:
- "9202:9202"
depends_on:
- lynn-mysql
links:
- lynn-nacos
- lynn-mysql
lynn-modules-job:
container_name: lynn-modules-job
build:
context: lynn-cloud/modules/job
dockerfile: dockerfile
ports:
- "9203:9203"
depends_on:
- lynn-mysql
links:
- lynn-nacos
- lynn-mysql
lynn-modules-file:
container_name: lynn-modules-file
build:
context: lynn-cloud/modules/file
dockerfile: dockerfile
ports:
- "9300:9300"
volumes:
- ./lynn-cloud/uploadPath:/home/lynn/uploadPath
links:
- lynn-nacos
lynn-visual-monitor:
container_name: lynn-visual-monitor
build:
context: lynn-cloud/visual/monitor
dockerfile: dockerfile
ports:
- "9100:9100"
lynn-magic-api:
container_name: lynn-magic-api
build:
context: lynn-cloud/modules/magic-api
dockerfile: dockerfile
ports:
- "9500:9500"
links:
- lynn-nacos
- lynn-mysql
- lynn-auth
- "lynn-modules-system:lynn-system"
lynn-modules-all:
container_name: lynn-modules-all
build:
context: lynn-cloud/all
dockerfile: dockerfile
ports:
- "8080:8080" #gateway
- "9200:9200" #auth
- "9201:9201" #system
- "9202:9202" #gen
- "9203:9203" #job
- "9300:9300" #file
- "9500:9500" #magicapi
depends_on:
- lynn-redis
links:
- lynn-redis
- lynn-nacos
- lynn-mysql