services: database: image: postgres:17.4-alpine3.21 container_name: database ports: - "5432:5432" environment: POSTGRES_DB: ${POSTGRES_DB} POSTGRES_USER: ${POSTGRES_USER} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} #Монтируем директорию на хосте, чтобы при повторных "docker-compose up" таблицы с нашими данными сохранялись volumes: - /database:/var/lib/postgresql/data cpus: '0.15' mem_limit: 256M healthcheck: test: ["CMD-SHELL", "pg_isready -U admin -WebSite"] interval: 5s timeout: 5s retries: 5 webserver: image: nginx:1.27.4-alpine container_name: webserver ports: - "80:80" - "443:443" volumes: - /WebApp/frontend:/usr/share/nginx/html - /WebApp/nginx/ssl:/etc/nginx/sites-available - /WebApp/nginx/nginx.conf:/etc/nginx/nginx.conf depends_on: - database - backend cpus: '0.15' mem_limit: 256M backend: image: python:3.9 container_name: backend_part ports: - "5000:5000" volumes: - /WebApp/backend:/media/backend working_dir: /media/backend command: > sh -c "pip install -r requirements.txt && python server.py" cpus: '0.35' mem_limit: 256M