Install
- ai gpg
- curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null\nsudo apt-get update
- ai docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-compose
- groupadd docker
- usermod -aG docker DOCKERRUNNINGUSERNAME
- LOGOUT LOGIN
- docker run hello-world
Commands
- docker ps
- docker ps -a
- docker exec -u 0 -it CONTAINERNAME /bin/bash
- docker inspect --format
- docker network inspect bridge
- docker logs [container_id]
- docker rm CONTAINERNAME
- docker stop $(docker ps -a -q)
- docker rm $(docker ps -a -q)
- docker kill [container_id]
- docker system prune -f && docker image prune -a
- docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' CONTAINERNAME
- docker inspect CONTAINERNAME -f "{{json .NetworkSettings.Networks }}"
- docker container inspect CONTAINERNAME | grep -i IPAddress
- docker inspect -f '{{ .Mounts }}' CONTAINER-ID
Docker Cheat Sheet with Bridge Network
Pulling Docker Image
docker pull image_name
Running a Container with a Bridge Network
docker run --name container_name --network bridge -d image_name
List Running Containers
docker ps
List All Containers including stopped
docker ps -a
Stop a Running Container
docker stop container_name
Remove a Stopped Container
docker rm container_name
Inspect Container Details
docker inspect container_name
Show Container Logs
docker logs container_name
Exec into a Running Container
docker exec -it container_name /bin/bash
Create a Docker Bridge Network
docker network create --driver bridge network_name
List Docker Networks
docker network ls
Inspect Network Details
docker network inspect network_name
Connect Container to Bridge Network
docker network connect network_name container_name
Disconnect Container from Network
docker network disconnect network_name container_name
Remove a Docker Network
docker network rm network_name
Building a Docker Image from Dockerfile
docker build -t custom_image_name path_to_dockerfile
Tagging an Image
docker tag source_image:tag new_image:tag
Links
- https://docs.docker.com/engine/install/debian/
- https://docs.docker.com/reference/
- https://ioflood.com/blog/docker-compose-down-guide-to-stopping-and-removing-docker-containers/
- https://dockerlabs.collabnix.com/docker/cheatsheet/
deBug
Cannot autolaunch D-Bus without X11 $DISPLAY
- https://stackoverflow.com/questions/51222996/docker-login-fails-on-a-server-with-no-x11-installed
- sudo apt install gnupg2 pass
- gpg2 --full-generate-key
- gpg2 -k
- pass init PUBKEY
zsh
- omz plugin load docker; omz plugin enable docker
- omz plugin info docker
| Alias | Command | Description |
| :------ | :---------------------------- | :--------------------------------------------------------------------------------------- |
| dbl | `docker build` | Build an image from a Dockerfile |
| dcin | `docker container inspect` | Display detailed information on one or more containers |
| dcls | `docker container ls` | List all the running docker containers |
| dclsa | `docker container ls -a` | List all running and stopped containers |
| dib | `docker image build` | Build an image from a Dockerfile (same as docker build) |
| dii | `docker image inspect` | Display detailed information on one or more images |
| dils | `docker image ls` | List docker images |
| dipu | `docker image push` | Push an image or repository to a remote registry |
| dirm | `docker image rm` | Remove one or more images |
| dit | `docker image tag` | Add a name and tag to a particular image |
| dlo | `docker container logs` | Fetch the logs of a docker container |
| dnc | `docker network create` | Create a new network |
| dncn | `docker network connect` | Connect a container to a network |
| dndcn | `docker network disconnect` | Disconnect a container from a network |
| dni | `docker network inspect` | Return information about one or more networks |
| dnls | `docker network ls` | List all networks the engine daemon knows about, including those spanning multiple hosts |
| dnrm | `docker network rm` | Remove one or more networks |
| dpo | `docker container port` | List port mappings or a specific mapping for the container |
| dpu | `docker pull` | Pull an image or a repository from a registry |
| dr | `docker container run` | Create a new container and start it using the specified command |
| drit | `docker container run -it` | Create a new container and start it in an interactive shell |
| drm | `docker container rm` | Remove the specified container(s) |
| drm! | `docker container rm -f` | Force the removal of a running container (uses SIGKILL) |
| dst | `docker container start` | Start one or more stopped containers |
| drs | `docker container restart` | Restart one or more containers |
| dsta | `docker stop $(docker ps -q)` | Stop all running containers |
| dstp | `docker container stop` | Stop one or more running containers |
| dtop | `docker top` | Display the running processes of a container |
| dvi | `docker volume inspect` | Display detailed information about one or more volumes |
| dvls | `docker volume ls` | List all the volumes known to docker |
| dvprune | `docker volume prune` | Cleanup dangling volumes |
| dxc | `docker container exec` | Run a new command in a running container |
| dxcit | `docker container exec -it` | Run a new command in a running container in an interactive shell |