Створення docker
контейнера (не запускаючи його)
docker create [IMAGE]
Переназвати створений container
docker rename [CONTAINER_NAME] [NEW_CONTAINER_NAME]
Запустити команду у новому контейнері
docker run [IMAGE] [COMMAND]
Запусти образ і подивитися що в ньому всередині
docker run -it --name you_name image_id /bin/sh
container
після виходуdocker run --rm [IMAGE]
container
та тримати його в робочому станіdocker run -td [IMAGE]
bash
shell
у ньомуdocker start -it [IMAGE]
container
команду та видалити контейнер після виконання.docker run -it-rm [IMAGE]
container
docker exec -it [CONTAINER]
container
якщо він не запущенийdocker rm [CONTAINER]
container
docker update [CONTAINER]
container
docker start [CONTAINER]
container
docker stop [CONTAINER]
docker pause [CONTAINER]
docker unpause [CONTAINER]
docker wait [CONTAINER]
docker kill [CONTAINER]
docker attach [CONTAINER]
image
c Dockerfile
docker build [URL/FILE]
image
c Dockerfile
та вказати tags
docker build -t <you_tag> [URL/FILE]
image
c registrydocker pull [IMAGE]
image
у registrydocker push [IMAGE]
image
з архівуdocker import [URL/FILE]
image
c container
docker commit [CONTAINER] [NEW_IMAGE_NAME]
image
з архіву tar
або stdin
docker load [TAR_FILE/STDIN_FILE]
image
у tar
архівdocker save [IMAGE] > [TAR_FILE]
image
docker rmi [IMAGE]
image
, на який більше не посилається позначений image
.Фільтр
dangling=true
знаходить зображення, що не використовуються.
docker rm $(docker ps -qa --no-trunc --filter "status=exited")
або
docker rmi $(docker images --filter "dangling=true" -q --no-trunc)
Видалити всі зображення, що не використовуються, а не тільки висять -a
.
Не вимагати підтвердження -f
docker system prune -af
Відображення списку образів, що не використовуються, Docker
:
docker images -f dangling=true
Видалити образи, що не використовуються:
docker image prune
Видалити docker cache build
docker builder prune -af
Docker відобразити використання диска
docker system df
docker container
та image
Відобразити запущені containers
docker ps
Відобразити запущені та зупинені containers
docker ps -a
Відобразити логі запущеного container
docker logs [CONTAINER]
Відобразити запущені контейнери та порти, які у них слухаються
docker ps --format 'table {{.Names}}\t{{.Ports}}'
Відобразити лише зупинені контейнери
docker ps -f status=exited
port mapping
у container
docker port [CONTAINER]
container
docker top [CONTAINER]
container
docker stats [CONTAINER]
docker diff [CONTAINER]
docker image ls
image
docker history [IMAGE]
Відобразити місце, яке використовує docker
:
docker system df
Відобразити все volume
docker volume ls
Відобразіть список томів, що не використовуються:
docker volume ls -qf dangling=true
Щоб дізнатися розмір кожного не використовуваного тома потрібно виконати команду:
docker volume inspect <volume_id> --format '{{.Mountpoint}}' | xargs du -sh
де <volume_id>
ім'я/ідентифікатор тому
Для видалення невикористовуваних Docker volume
docker volume prune
або
docker volume prune -f
docker network ls
docker network rm [NETWORK]
docker network inspect [NETWORK]
docker network connect [NETWORK] [CONTAINER]
docker network disconnect [NETWORK] [CONTAINER]
docker network create --driver bridge --subnet=192.168.0.0/16 --gateway=192.168.0.1 lans-local
lans-local
- ім'я мережі
Приклад конфігу використання потім в docker-compose
:
version: '3.1'
services:
db:
image: postgres:9.5.19
restart: always
container_name: db_service
deploy:
resources:
limits:
cpus: '0.50'
memory: 1024M
reservations:
cpus: '0.25'
memory: 20M
environment:
POSTGRES_USER: user_login
POSTGRES_PASSWORD: user_pass
POSTGRES_DB: user_database
volumes:
- /data/_data:/var/lib/postgresql/data
ulimits:
nproc: 65535
nofile:
soft: 20000
hard: 40000
ports:
- '5432:5432'
networks:
- lans
networks:
lans:
external: true #Якщо ви підключаєте до створеної мережі
name: lans-local
driver: bridge
Усі наступні послуги можна також підключати до цієї мережі
Кастомна мережа в docker
"bip": "192.168.0.1/24"
мережа яка за умовчанням буде видаватися в бриджі
%userprofile%\.docker\deamon.json
шлях до файлу в windows
{
"bip": "192.168.0.1/24",
"builder": {
"gc": {
"defaultKeepStorage": "20GB",
"enabled": true
}
},
"experimental": false,
"features": {
"buildkit": true
}
}