1. docker信息

docker info

2. docker, compose和machine版本信息

docker --version
docker verison
docker-compose --version
docker-machine --version

3. 列出本地镜像

docker images

4. 列出所有正在运行的容器

docker ps

or

docker container ls

5. 列出所有容器及显示容器大小

docker ps -as

or

docker container ls -as

参数-s显示容器大小, -a显示所有容器

6. 列出所有容器

docker ps -a

or

docker container ls -a

7. 进入一个正在运行的容器

docker exec -it 容器名 /bin/sh

or

docker exec -it 容器短UUID /bin/sh

or

docker exec -it 容器长UUID /bin/sh

注意, /bin/sh若找不到, 可替换为/bin/bashbashsh, 下同

8. 退出所在运行的容器

exit命令即可退出

/ # exit

9. 运行docker run hello-world以测试从Docker Hub中拉取图像并启动容器

docker run hello-world

10. 运行一个Ubuntu容器

docker run -it ubuntu bash

11. 通过镜像创建新容器

docker run --name 容器名 镜像名

docker run --name alpineappbase alpine

若容器已创建过, 则会报容器已存在的错误, 如:

docker: Error response from daemon: Conflict. The container name "/alpineappbase" is already in use by container "7b32b8c559618c677f50ab793d70e4d08dda3499c3b13d82cb118aa1e6e91e1a". You have to remove (or rename) that container to be able to reuse that name.

12. 启动已创建的容器

docker start 容器名/容器短UUID/容器长UUID

docker start alpineappbase

or

docker start 7b32b8c55961

or

docker start 7b32b8c559618c677f50ab793d70e4d08dda3499c3b13d82cb118aa1e6e91e1a

13. 停止一个运行中的容器

docker stop 容器名/容器短UUID/容器长UUID

docker stop alpineappbase

or

docker stop 7b32b8c55961

or

docker stop 7b32b8c559618c677f50ab793d70e4d08dda3499c3b13d82cb118aa1e6e91e1a

其中, 7b32b8c55961docker ps中的CONTAINER id, 是短UUID, 对应的长UUID为7b32b8c559618c677f50ab793d70e4d08dda3499c3b13d82cb118aa1e6e91e1a

14. 删除容器

docker rm 容器名/容器短UUID/容器长UUID

15. 从Docker Hub中拉取或者更新指定镜像

docker pull 镜像名

16. 从Docker Hub中搜索符合条件的镜像

docker search 镜像名

17. 从本地移除一个或多个指定的镜像

docker rmi 镜像名1 镜像名2 ...

-f: 强行移除该镜像,即使其正被使用;
--no-prune: 不移除该镜像的过程镜像,默认移除。

18. 查看容器内的进程

docker top 容器ID

如: docker top ee40883460d7

其中PID是容器内进程在宿主机上的pid,ppid是容器内进程在宿主机上的父进程pid

19. 查看镜像或容器详情

docker inspect 镜像ID/容器ID