-
Notifications
You must be signed in to change notification settings - Fork 0
Docker
Andrei Montchik edited this page Aug 1, 2024
·
22 revisions
sudo apt updatesudo apt install ca-certificates- Add Docker's official GPG key:
- Set permissions to the
/etc/apt/keyringsdirectory:sudo install -m 0755 -d /etc/apt/keyrings - Load the Docker GPG key:
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc - Update the loaded key permissions:
sudo chmod a+r /etc/apt/keyrings/docker.asc
- Set permissions to the
- Add Docker repository to the
aptsources:
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update- Install the latest Docker version:
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin - Verify the installation:
sudo docker run hello-world
- Download an image from Docker registry:
sudo docker pull <IMAGE_NAME> - Check the downloaded images:
sudo docker images - Build an image:
docker build <IMAGE_NAME> - Run an image:
docker run <IMAGE_NAME> - Remove an image:
docker rmi IMAGE <REPOSITORY:TAG> - Remove all unused images:
sudo docker prune -a - Forcefully Remove all images:
docker rmi -f $(docker images -q)
- Statistics for running containers:
sudo docker stats - List of all containers:
sudo docker ps -a - List container mounts:
docker inspect -f '{{ .Mounts }}' <container id> - Start a container:
docker start <CONTAINER_ID> - Container info:
docker inspect <CONTAINER_ID>- Container status:
docker inspect --format='{{.State.Status}}' <CONTAINER_ID> - Container mappings:
docker inspect -f '{{ .Mounts }}' <CONTAINER_ID>
- Container status:
- List of processes in a container:
docker top <CONTAINER_ID> - Container logs:
docker logs <CONTAINER_ID> | less - Restart container:
sudo docker restart <CONTAINER_ID> - Access container:
sudo docker exec -ti <CONTAINER_ID> /bin/bash - Stop container:
sudo docker stop <CONTAINER_ID> - Stop all running containers:
docker stop $(docker ps -aq) - Remove a container:
sudo docker rm <CONTAINER_ID> - Remove all containers:
docker container rm $(docker container ls -aq)
- List of services:
- Start a service:
docker-compose start <SERVICE_NAME>Ordocker-compose up -d <SERVICE_NAME>- in foreground:
docker-compose up <SERVICE_NAME>
- in foreground:
- Service logs:
docker-compose logs <SERVICE_NAME> - Access a service:
docker-compose exec <SERVICE_NAME> bash - Stop a service:
docker-compose stop <SERVICE_NAME> - Remove a service:
docker-compose rm <SERVICE_NAME>
- List of networks:
docker network ls - Network info:
docker network inspect cpp_dev
- Remove all orphan containers, images w/o containers, unused networks etc:
docker system prune -a