django-vue-admin/docker-compose.yml

130 lines
3.3 KiB
YAML
Raw Normal View History

2021-03-07 02:42:17 +00:00
# start django command
# local domain
# saas-local.anthembj.com
# ceshi-local.anthembj.com
# docker-compose run --entrypoint '/backend/docker_start.sh' -p 8000:8000 docker_django
version: "3"
services:
dvadmin-redis:
image: redis:latest
container_name: dvadmin-redis
ports:
- "6380:6379"
expose:
- "6379"
volumes:
- ./docker_env/redis/data:/data
- ./docker_env/redis/redis.conf:/etc/redis/redis.conf
command: redis-server /etc/redis/redis.conf
networks:
- dvadmin_net
dvadmin-mysql:
image: mysql:5.7
container_name: dvadmin-mysql
#使用该参数container内的root拥有真正的root权限否则container内的root只是外部的一个普通用户权限
#设置为true不然数据卷可能挂载不了启动不起
privileged: true
restart: always
ports:
- "3307:3306"
environment:
MYSQL_ROOT_PASSWORD: "q1w2e3r4T%Y^U&MYSQL"
2021-03-07 03:00:30 +00:00
MYSQL_DATABASE: "django-vue-admin"
2021-03-07 02:42:17 +00:00
TZ: Asia/Shanghai
command:
--wait_timeout=31536000
--interactive_timeout=31536000
--max_connections=1000
--default-authentication-plugin=mysql_native_password
volumes:
#映射mysql的数据目录到宿主机保存数据
- "./docker_env/mysql/data:/var/lib/mysql"
#根据宿主机下的配置文件创建容器
- "./docker_env/mysql/conf.d:/etc/mysql/conf.d"
- "./docker_env/mysql/logs:/logs"
networks:
- dvadmin_net
dvadmin-django:
build:
context: .
dockerfile: ./docker_env/django/Dockerfile
# image: django:2.2
container_name: dvadmin-django
working_dir: /dvadmin-backend
# command: bash -c "python manage.py makemigrations && python manage.py migrate && python manage.py collectstatic --noinput && python manage.py runserver"
# command: bash
depends_on:
- dvadmin-mysql
- dvadmin-redis
2021-03-07 03:00:30 +00:00
environment:
- REDIS_HOST=dvadmin-redis
- DATABASE_HOST=dvadmin-mysql
2021-03-07 02:42:17 +00:00
volumes:
- ./dvadmin-backend:/dvadmin-backend
- ./logs/log:/var/log
ports:
- "8000:8000"
expose:
- "8000"
restart: always
networks:
- dvadmin_net
# docker-celery:
# build:
# context: .
# dockerfile: ./docker_env/celery/Dockerfile
# # image: celery:1.0
# container_name: docker-celery
# working_dir: /dvadmin-backend
# # command: bash
# depends_on:
# - dvadmin-mysql
# - dvadmin-redis
# - dvadmin-django
# volumes:
# - ./dvadmin-backend:/dvadmin-backend
# - ./logs/log:/var/log
# ports:
# - "5672:5672"
# expose:
# - "5672"
# restart: always
# networks:
# - dvadmin_net
2021-03-07 03:00:30 +00:00
dvadmin-nginx:
image: nginx:latest
2021-03-07 03:55:39 +00:00
container_name: dvadmin-nginx
2021-03-07 03:00:30 +00:00
# build: ./docker_env/nginx
restart: always
ports:
- "80:80"
- "443:443"
expose:
- "80"
- "443"
volumes:
- ./docker_env/nginx/nginx.conf:/etc/nginx/nginx.conf
- ./docker_env/nginx/sites-enabled:/etc/nginx/sites-enabled
- ./docker_env/nginx/keys:/nginx/keys
- ./dvadmin-backend:/dvadmin-backend
- ./dvadmin-doc:/dvadmin-doc
- ./dvadmin-ui:/dvadmin-ui
- ./logs/nginx:/var/log/nginx
depends_on:
- dvadmin-django
networks:
- dvadmin_net
2021-03-07 02:42:17 +00:00
networks:
dvadmin_net:
driver: bridge