一、引言
由于近两年云原生热,大家对docker、docker compose及k8s或多或少都有一些涉猎,即便没有实际应用肯定也耳熟能详,今天对docker及docker compose的命令集进行梳理,大家可以收藏以便之后快速查阅。
二、docker常用命令
Common Commands(常用命令):
- run Create and run a new container from an image(从一个image镜像创建并启动一个新的container容器)
- exec Execute a command in a running container(在一个运行的container容器执行一段命令)
- ps List containers(列出container容器,-a列出全部容器,不加-a列出运行的容器)
- build Build an image from a Dockerfile(从Dockerfile配置文件创建一个image镜像)
- pull Download an image from a registry(从dockerhub等资源库下载一个image镜像)
- push Upload an image to a registry(推送一个镜像至资源库)
- images List images(列出images镜像)
- login Log in to a registry(登陆进一个资源库)
- logout Log out from a registry(从资源库推出)
- search Search Docker Hub for images(从dockerhub中搜索images镜像)
- version Show the Docker version information(看docker的版本信息)
- info Display system-wide information(查看docker附带的插件信息)
Commands:
- attach Attach local standard input, output, and error streams to a running container()
- commit Create a new image from a container's changes
- cp Copy files/folders between a container and the local filesystem
- create Create a new container
- diff Inspect changes to files or directories on a container's filesystem
- events Get real time events from the server
- export Export a container's filesystem as a tar archive
- history Show the history of an image
- import Import the contents from a tarball to create a filesystem image
- inspect Return low-level information on Docker objects(返回container或images的元数据)
- kill Kill one or more running containers(杀死一个或更多个运行的container容器)
- load Load an image from a tar archive or STDIN
- logs Fetch the logs of a container(取出container容器运行日志)
- pause Pause all processes within one or more containers
- port List port mappings or a specific mapping for the container列出容器与宿主机的映射关系
- rename Rename a container(重命名一个容器)
- restart Restart one or more containers(重启一个或更多个container容器)
- rm Remove one or more containers(删除一个或更多个container容器)
- rmi Remove one or more images(删除一个或更多个image镜像)
- save Save one or more images to a tar archive (streamed to STDOUT by default)
- start Start one or more stopped containers(开始一个或更多个停止的容器)
- stats Display a live stream of container(s) resource usage statistics
- stop Stop one or more running containers(停止一个或多个运行中的容器)
- tag Create a tag TARGET_IMAGE that refers to SOURCE_IMAGE(对二次开发的image镜像打标签)
- top Display the running processes of a container(显示一个容器内运行的进程)
- unpause Unpause all processes within one or more containers
- update Update configuration of one or more containers(更新一个或更多容器的配置)
- wait Block until one or more containers stop, then print their exit codes
Management Commands(管理命令):
- builder Manage builds
- buildx* Docker Buildx (Docker Inc., v0.11.0)
- checkpoint Manage checkpoints
- compose* Docker Compose (Docker Inc., v2.19.1)
- container Manage containers
- context Manage contexts
- dev* Docker Dev Environments (Docker Inc., v0.1.0)
- extension* Manages Docker extensions (Docker Inc., v0.2.20)
- image Manage images
- init* Creates Docker-related starter files for your project (Docker Inc., v0.1.0-beta.6)
- manifest Manage Docker image manifests and manifest lists
- network Manage networks
- plugin Manage plugins
- sbom* View the packaged-based Software Bill Of Materials (SBOM) for an image (Anchore Inc., 0.6.0)
- scan* Docker Scan (Docker Inc., v0.26.0)
- scout* Command line tool for Docker Scout (Docker Inc., 0.16.1)
- system Manage Docker
- trust Manage trust on Docker images
- volume Manage volumes
Swarm Commands:
- config Manage Swarm configs
- node Manage Swarm nodes
- secret Manage Swarm secrets
- service Manage Swarm services
- stack Manage Swarm stacks
- swarm Manage Swarm
Global Options:
- --config string Location of client config files (default "/Users/daoguang1/.docker")
- -c, --context string Name of the context to use to connect to the daemon (overrides DOCKER_HOST env var and default context set with "docker context use")
- -D, --debug Enable debug mode
- -H, --host list Daemon socket to connect to
- -l, --log-level string Set the logging level ("debug", "info", "warn", "error", "fatal") (default "info")
- --tls Use TLS; implied by --tlsverify
- --tlscacert string Trust certs signed only by this CA (default "/Users/daoguang1/.docker/ca.pem")
- --tlscert string Path to TLS certificate file (default "/Users/daoguang1/.docker/cert.pem")
- --tlskey string Path to TLS key file (default "/Users/daoguang1/.docker/key.pem")
- --tlsverify Use TLS and verify the remote
- -v, --version Print version information and quit
三、docker compose常用命令
Commands(命令):
- build Build or rebuild services
- config Parse, resolve and render compose file in canonical format
- cp Copy files/folders between a service container and the local filesystem
- create Creates containers for a service.
- down Stop and remove containers, networks
- events Receive real time events from containers.
- exec Execute a command in a running container.
- images List images used by the created containers
- kill Force stop service containers.
- logs View output from containers
- ls List running compose projects
- pause Pause services
- port Print the public port for a port binding.
- ps List containers
- pull Pull service images
- push Push service images
- restart Restart service containers
- rm Removes stopped service containers
- run Run a one-off command on a service.
- start Start services
- stop Stop services
- top Display the running processes 列出容器组合中每个容器的进程,需要在docker-compose.yaml所在目录执行
- unpause Unpause services
- up Create and start containers 创建或启动容器组合,需要在docker-compose.yaml所在目录执行
- version Show the Docker Compose version information 展示docker compose版本
Options(配置):
- --ansi string Control when to print ANSI control characters ("never"|"always"|"auto") (default "auto")
- --compatibility Run compose in backward compatibility mode
- --dry-run Execute command in dry run mode
- --env-file stringArray Specify an alternate environment file.
- -f, --file stringArray Compose configuration files
- --parallel int Control max parallelism, -1 for unlimited (default -1)
- --profile stringArray Specify a profile to enable
- --progress string Set type of progress output (auto, tty, plain, quiet) (default "auto")
- --project-directory string Specify an alternate working directory
- (default: the path of the, first specified, Compose file)
- -p, --project-name string Project name
四、总结
现在不仅AI厂商卷,开源项目也卷的要命,基本上所有的开源项目都会将镜像上传至dockerhub,并且支持docker或者docker compose的一键部署,收藏一份命令集,随时用随时找。