🚀 first commit
This commit is contained in:
56
docker-compose.yml
Normal file
56
docker-compose.yml
Normal file
@@ -0,0 +1,56 @@
|
||||
# Description: Docker Compose file for running the Django application with MySQL and Nginx
|
||||
|
||||
services:
|
||||
mysql:
|
||||
image: mysql:latest
|
||||
platform: linux/amd64
|
||||
container_name: kb_mysql
|
||||
restart: always
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
|
||||
MYSQL_DATABASE: ${MYSQL_DATABASE}
|
||||
MYSQL_USER: ${MYSQL_USER}
|
||||
MYSQL_PASSWORD: ${MYSQL_PASSWORD}
|
||||
volumes:
|
||||
- ./mysql_data:/var/lib/mysql
|
||||
healthcheck:
|
||||
test: [ "CMD", "mysqladmin", "ping", "-h", "localhost" ]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
web:
|
||||
container_name: kb_web
|
||||
build: .
|
||||
environment:
|
||||
DJANGO_SECRET_KEY: ${DJANGO_SECRET_KEY}
|
||||
PRODUCTION: ${PRODUCTION}
|
||||
DEBUG: ${DEBUG}
|
||||
PUBLIC_URL: ${PUBLIC_URL}
|
||||
EMAIL_HOST: ${EMAIL_HOST}
|
||||
EMAIL_PORT: ${EMAIL_PORT}
|
||||
EMAIL_USE_TLS: ${EMAIL_USE_TLS}
|
||||
EMAIL_HOST_USER: ${EMAIL_HOST_USER}
|
||||
EMAIL_HOST_PASSWORD: ${EMAIL_HOST_PASSWORD}
|
||||
MYSQL_HOST: mysql
|
||||
MYSQL_PORT: 3306
|
||||
MYSQL_DATABASE: ${MYSQL_DATABASE}
|
||||
MYSQL_USER: ${MYSQL_USER}
|
||||
MYSQL_PASSWORD: ${MYSQL_PASSWORD}
|
||||
command: bash -c 'cd /app && ./run.sh'
|
||||
depends_on:
|
||||
mysql:
|
||||
condition: service_healthy
|
||||
restart: "always"
|
||||
nginx:
|
||||
image: nginx:latest
|
||||
platform: linux/amd64
|
||||
container_name: kb_nginx
|
||||
ports:
|
||||
- ${NGINX_PUBLIC_PORT}:80
|
||||
volumes:
|
||||
- ./nginx/nginx.conf:/etc/nginx/conf.d/default.conf
|
||||
- ./staticfiles:/code/static
|
||||
- ./mediafiles:/code/media
|
||||
depends_on:
|
||||
- web
|
||||
restart: "always"
|
||||
Reference in New Issue
Block a user