Docker¶
Основні команди Docker та Docker Compose для роботи з контейнерами.
Встановлення¶
# Ubuntu/Debian
curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker $USER
# Перезайти в систему для застосування групи
Основні команди¶
Контейнери¶
# Список запущених контейнерів
docker ps
# Всі контейнери (включно з зупиненими)
docker ps -a
# Логи контейнера
docker logs -f container_name
# Виконати команду в контейнері
docker exec -it container_name bash
# Зупинити контейнер
docker stop container_name
# Видалити контейнер
docker rm container_name
Образи¶
# Список образів
docker images
# Видалити образ
docker rmi image_name
# Очистити невикористані образи
docker image prune -a
Docker Compose¶
Основні команди¶
# Запустити всі сервіси
docker compose up -d
# Перебудувати та запустити
docker compose up -d --build
# Зупинити всі сервіси
docker compose down
# Логи всіх сервісів
docker compose logs -f
# Логи конкретного сервісу
docker compose logs -f service_name
# Перезапустити сервіс
docker compose restart service_name
Приклад docker-compose.yml¶
version: '3.8'
services:
web:
image: nginx:alpine
ports:
- "80:80"
volumes:
- ./html:/usr/share/nginx/html:ro
restart: unless-stopped
db:
image: postgres:15
environment:
POSTGRES_PASSWORD: ${DB_PASSWORD}
volumes:
- db_data:/var/lib/postgresql/data
restart: unless-stopped
volumes:
db_data:
Troubleshooting¶
Контейнер не запускається¶
# Перевірити логи
docker logs container_name
# Перевірити статус
docker inspect container_name | grep -A 5 "State"
Проблеми з мережею¶
# Список мереж
docker network ls
# Інспекція мережі
docker network inspect network_name
Очистка системи¶
# Видалити все невикористане
docker system prune -a
# Перевірити використання диску
docker system df
Корисні аліаси¶
Додайте в ~/.bashrc:
alias dc='docker compose'
alias dps='docker ps'
alias dlogs='docker logs -f'
Шлях: reference/docker-commands.md