Інструмент для визначення й запуску багатоконтейнерних додатків (YAML файл).
version: '3.8'
services:
web:
build: .
ports:
- "8000:8000"
depends_on:
- db
environment:
- DB_HOST=db
db:
image: postgres:15
volumes:
- db_data:/var/lib/postgresql/data
environment:
- POSTGRES_DB=mydb
volumes:
db_data:
Контейнер у Compose файлі. Має своє ім'я, конфігурацію, порти.
version: '3.8'
services:
app:
image: myapp:latest
networks:
- mynet
depends_on:
- redis
redis:
image: redis:7
networks:
- mynet
networks:
mynet:
driver: bridge
services:
db:
image: postgres:15
volumes:
# Named volume
- db_data:/var/lib/postgresql/data
# Bind mount
- ./sql_init:/docker-entrypoint-initdb.d
volumes:
db_data:
# Структура проекту
project/
Dockerfile
docker-compose.yml
app.py
requirements.txt
# Запустити
docker-compose up --build
# Перевірити логи
docker-compose logs -f app
Всі 23 лекції засвоєні. Чудово!
Дякую за увагу! 💾