Docker Cli

v1.0.0

Helper for using the Docker CLI to build, run, stop, inspect, and manage containers and images. Use when the user wants to perform container-related tasks fr...

0· 340· 1 versions· 1 current· 1 all-time· Updated 1mo ago· MIT-0
byopenlang@openlang-cn

Docker CLI Helper

This skill explains how to use the Docker command line for common container workflows.

When to Use

Use this skill when:

  • The user wants to build or rebuild a Docker image.
  • The user wants to run a container (one-off or long-running).
  • The user wants to see which containers/images/volumes exist.
  • The user wants to stop or remove containers/images.
  • The user wants to see logs, exec into a container, or check resource usage.

Requirements

  • Docker is installed and running.
  • docker version or docker info works in the user’s shell.

If unsure, suggest the user run:

docker version

to confirm Docker is available.

Safety Guidelines

  • Prefer read-only or non-destructive commands first:
    • docker ps, docker ps -a
    • docker images
    • docker logs
    • docker inspect
  • Be cautious with destructive commands:
    • docker rm, docker rmi
    • docker system prune
    • docker volume rm
  • Only recommend destructive cleanups when the user explicitly wants to free resources and understands what will be removed.

Common Workflows

1. List and inspect containers

List running containers:

docker ps

List all containers (including stopped):

docker ps -a

Inspect a container in detail:

docker inspect <container-id-or-name>

2. List and inspect images

List local images:

docker images

Inspect an image:

docker inspect <image-id-or-name>

3. Build images

Build an image from a Dockerfile in the current directory:

docker build -t <image-name>:<tag> .

Example:

docker build -t my-app:latest .

If the Dockerfile is in another directory:

docker build -t my-app:latest path/to/context

4. Run containers

Run a container in the foreground:

docker run --rm -it <image-name>:<tag>

Run in detached mode (background service):

docker run -d --name <container-name> <image-name>:<tag>

Map ports from container to host:

docker run -d --name <container-name> -p 8080:80 <image-name>:<tag>

Mount a host directory into the container:

docker run -d --name <container-name> -v /host/path:/container/path <image-name>:<tag>

5. Stop and remove containers

Stop a running container:

docker stop <container-id-or-name>

Remove a stopped container:

docker rm <container-id-or-name>

Stop and remove in one shot (two commands):

docker stop <container-id-or-name>
docker rm <container-id-or-name>

6. Remove images

Remove an image by ID or name:

docker rmi <image-id-or-name>

Only suggest this when the user is sure the image is no longer needed.

7. Logs and exec

See logs for a container:

docker logs <container-id-or-name>

Stream logs (follow):

docker logs -f <container-id-or-name>

Execute a shell inside a running container (if it has /bin/bash):

docker exec -it <container-id-or-name> /bin/bash

or with /bin/sh:

docker exec -it <container-id-or-name> /bin/sh

8. Clean up resources

Only suggest these when the user explicitly wants cleanup:

  • Remove all stopped containers:
docker container prune
  • Remove unused images:
docker image prune
  • Remove everything unused (containers, networks, images, and optionally volumes):
docker system prune

For a more aggressive cleanup, but only if the user confirms:

docker system prune -a

Troubleshooting Tips

  • If images cannot be pulled, check:
    • Network connectivity.
    • Registry authentication (if using a private registry).
  • If ports are already in use, suggest:
    • Changing the host port in -p host:container.
    • Or stopping the process that currently uses the port.
  • If a container keeps exiting immediately:
    • Suggest checking docker logs <container> for errors.
    • Inspect entrypoint and command configuration.

Version tags

latestvk975tjdnx3fzgyfwm0wcmkzd8182r4c8