docker create [OPTIONS] IMAGE [COMMAND] [ARG...]
docker create -it ubuntu:latest
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
-d
:后台运行容器。-p
:指定端口映射,例如 -p 8080:80
。--name
:为容器指定一个名称。-v
:挂载卷,例如 -v /host/path:/container/path
。docker run -d -p 8080:80 --name webserver nginx
docker start [OPTIONS] CONTAINER
docker start webserver
docker stop [OPTIONS] CONTAINER
docker stop webserver
docker restart [OPTIONS] CONTAINER
docker restart webserver
docker rm [OPTIONS] CONTAINER
-f
:强制删除一个运行中的容器。-v
:删除与容器关联的卷。docker rm -f webserver
docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
docker exec -it webserver bash
docker inspect [OPTIONS] NAME|ID [NAME|ID...]
--format
:使用 Go 模板格式化输出。-f
或 --format
:指定返回值的模板文件。--type
:为搜索结果指定对象类型。docker inspect mycontainer
docker inspect --format='{{.Id}} - {{.Path}} - {{.Args}}' mycontainer
docker top [OPTIONS] CONTAINER
docker top mycontainer
docker attach [OPTIONS] CONTAINER
--detach-keys
:指定退出 attach 模式的按键序列。--no-stdin
:不将 stdin 连接到容器。--sig-proxy
:代理接收到的所有信号到进程(默认为 true)。docker attach mycontainer
docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH|-
或 docker cp [OPTIONS] SRC_PATH|- CONTAINER:DEST_PATH
-a
或 --archive
:归档模式(复制为 tar 文件)。-L
或 --follow-link
:始终跟随符号链接。docker cp mycontainer:/path/to/file /host/path/
docker cp /host/path/file mycontainer:/path/
docker diff CONTAINER
docker diff mycontainer
docker logs [OPTIONS] CONTAINER
--details
:显示额外的日志详细信息。--follow
:跟随日志输出。--since
:显示自某个时间戳之后的日志。--tail
:显示日志的最后几行。--timestamps
:显示时间戳。docker logs mycontainer
docker logs -f mycontainer
docker stats [OPTIONS] [CONTAINER...]
--all
:显示所有容器的统计信息,不仅仅是运行中的。--format
:使用 Go 模板格式化输出。--no-stream
:仅显示一次统计信息,然后退出。docker stats mycontainer
docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
-a
或 --author
:设置镜像的作者。-c
或 --change
:应用 Dockerfile 指令以创建镜像。-m
或 --message
:设置提交消息。-p
或 --pause
:在提交期间暂停容器(默认为 true)。docker commit mycontainer myrepo/myimage:mytag
docker export [OPTIONS] CONTAINER
-o
或 --output
:将输出写入文件,而不是标准输出。docker export -o mycontainer.tar mycontainer
docker import [OPTIONS] file|URL|- [REPOSITORY[:TAG]]
-c
或 --change
:应用 Dockerfile 指令以创建镜像。-m
或 --message
:设置提交消息。docker import mycontainer.tar myrepo/myimage:mytag
docker port [OPTIONS] CONTAINER [PRIVATE_PORT[/PROTO]]
--format
:使用 Go 模板格式化输出。docker port mycontainer
docker port mycontainer 80
docker ps [OPTIONS]
-a
:列出所有容器(包括已停止的)。-q
:只显示容器 ID。docker ps -a
docker images [OPTIONS] [REPOSITORY[:TAG]]
docker images
docker pull [OPTIONS] NAME[:TAG|@DIGEST]
docker pull ubuntu:latest
docker push [OPTIONS] NAME[:TAG]
docker push myusername/myimage:latest
docker rmi [OPTIONS] IMAGE [IMAGE...]
docker rmi ubuntu:latest
docker build [OPTIONS] PATH | URL | -
-t
:指定镜像名称和标签。-f
:指定 Dockerfile 的路径。docker build -t myimage:latest .
docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]
myimage:latest
打上标签 username/myimage:v1.0
:docker tag myimage:latest username/myimage:v1.0
docker save [OPTIONS] IMAGE [IMAGE...]
-o
或 --output
:指定输出文件,默认为标准输出(STDOUT)。myimage:latest
镜像保存为 myimage.tar
文件:docker save -o myimage.tar myimage:latest
docker load [OPTIONS]
-i
或 --input
:指定输入文件,默认为标准输入(STDIN)。--quiet
:静默模式,不显示加载的详细信息。myimage.tar
文件加载镜像:docker load -i myimage.tar
docker history [OPTIONS] IMAGE
--format
:使用 Go 模板格式化输出。--human
:以人类可读的格式显示大小和时间。--no-trunc
:显示完整的命令、标签等信息,不截断输出。-q
或 --quiet
:仅显示镜像 ID。myimage:latest
镜像的历史记录:docker history myimage:latest
docker history --human myimage:latest
docker network create [OPTIONS] NETWORK
docker network create mynetwork
docker network ls [OPTIONS]
docker network ls
docker network rm [OPTIONS] NETWORK
docker network rm mynetwork
docker network inspect [OPTIONS] NETWORK [NETWORK...]
--format
:使用 Go 模板格式化输出。-f
或 --format
:指定返回值的模板文件。docker network inspect mynetwork
docker network inspect network1 network2
docker network inspect --format='{{.Name}} - {{.Driver}}' mynetwork
docker network connect [OPTIONS] NETWORK CONTAINER
--alias
:为容器在网络中设置别名。--ip
:为容器指定 IPv4 地址。--ip6
:为容器指定 IPv6 地址。--link
:添加链接到另一个容器。--link-local-ip
:为容器指定一个或多个链接本地地址。--link
选项是 Docker 的遗留功能,不建议在生产环境中使用。docker network connect mynetwork mycontainer
docker network connect --alias myalias mynetwork mycontainer
docker network disconnect [OPTIONS] NETWORK CONTAINER
--force
:强制断开容器的网络连接。docker network disconnect mynetwork mycontainer
docker volume create [OPTIONS] VOLUME
docker volume create myvolume
docker volume ls [OPTIONS]
docker volume ls
docker volume rm [OPTIONS] VOLUME
docker volume rm myvolume
docker volume inspect [OPTIONS] VOLUME [VOLUME...]
--format
:使用 Go 模板格式化输出。-f
或 --format
:指定返回值的模板文件。docker volume inspect myvolume
docker volume inspect volume1 volume2
docker volume inspect --format='{{.Name}} - {{.Driver}}' myvolume
docker version [OPTIONS]
docker version
docker info [OPTIONS]
docker info
docker login [OPTIONS] [SERVER]
docker login
docker logout [OPTIONS] [SERVER]
docker logout
docker search [OPTIONS] TERM
docker search nginx
以上列出的指令是Docker中常用的命令,但并不是全部。Docker的指令非常丰富,可以根据具体的需求和场景选择合适的指令。同时,每个指令都有很多选项和参数可以使用,可以通过 docker COMMAND --help
来获取更详细的信息。