/ docker-compose.yml
docker-compose.yml
1 version: '3' 2 3 services: 4 python: 5 build: ./bin/python 6 command: uwsgi --socket :8001 --module app.wsgi --py-autoreload 1 --logto /tmp/mylog.log 7 container_name: '${DJANGO_PROJECT_NAME}-python' 8 volumes: 9 - ${PROJECT_DIR-./code}:/code 10 - ${STATIC_DIR-./static}:/static 11 - ${MEDIA_DIR-./media}:/media 12 expose: 13 - "${HOST_MACHINE_DJANGO_PORT}" 14 depends_on: 15 - db 16 networks: 17 djangoproject: 18 ipv4_address: 192.168.24.13 19 20 21 db: 22 build: ./bin/mysql 23 command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci 24 container_name: '${DJANGO_PROJECT_NAME}-db' 25 ports: 26 - "${HOST_MACHINE_MYSQL_PORT}:3306" 27 environment: 28 MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD} 29 MYSQL_DATABASE: ${MYSQL_DATABASE} 30 MYSQL_USER: ${MYSQL_USER} 31 MYSQL_PASSWORD: ${MYSQL_PASSWORD} 32 volumes: 33 - ${MYSQL_DIR-./mysql}:/var/lib/mysql 34 - ${SQL_INITFILE-./sql}:/docker-entrypoint-initdb.d 35 networks: 36 djangoproject: 37 ipv4_address: 192.168.24.14 38 39 40 phpmyadmin: 41 image: phpmyadmin/phpmyadmin 42 container_name: '${DJANGO_PROJECT_NAME}-phpmyadmin' 43 links: 44 - db 45 environment: 46 PMA_HOST: database 47 PMA_PORT: 3306 48 PMA_USER: root 49 ports: 50 - '${HOST_MACHINE_PMA_PORT}:81' 51 volumes: 52 - /sessions 53 - ${PHP_INI-./config/php/php.ini}:/usr/local/etc/php/conf.d/php-phpmyadmin.ini 54 networks: 55 djangoproject: 56 ipv4_address: 192.168.24.15 57 58 59 nginx: 60 image: nginx:1.13 61 container_name: '${DJANGO_PROJECT_NAME}-nginx' 62 ports: 63 - "${HOST_MACHINE_NGINX_UNSECURE_PORT}:8000" 64 - "${HOST_MACHINE_NGINX_SECURE_PORT}:443" 65 volumes: 66 - ${NGINX_CONFIG-./nginx/conf}:/etc/nginx/conf.d 67 - ${NGINX_UWSGIPARAMS-./nginx/uwsgi_params}:/etc/nginx/uwsgi_params 68 - ${STATIC_REF-./static}:/static 69 - ${MEDIA_REF-./media}:/media 70 depends_on: 71 - python 72 networks: 73 djangoproject: 74 ipv4_address: 192.168.24.16 75 76 networks: 77 djangoproject: 78 ipam: 79 driver: default 80 config: 81 - subnet: 192.168.24.0/24