这两年 Docker 比较火,很多大厂都在使用。这里记录一下常用的指令。
¶1、docker run
docker 进程运行于独立的容器中,而容器是宿主机的一个进程,宿主机可以是本地的也可以是远程的。每当执行docker run
之后,容器进程是独立运行的,它有自己的文件系统、网络以及与宿主机隔离的进程。原文
¶2、docker run 和 docker start 的区别
-
docker run
docker run 只在第一次运行时使用,根据镜像生成容器,以后再次启动这个容器时,只需要使用命令 docker start 即可。docker run 相当于执行了两步操作:根据镜像生成容器,然后将容器启动,使之变成运行时容器(docker start) -
docker start
docker start 的作用是重新启动已存在的镜像。也就是说,如果使用这个命令,我们必须事先知道这个容器的 container_id 或 container_name,可以使用 docker ps 找到这个容器的信息
¶3、查看镜像列表
1 | docker images |
¶4、删除某个镜像
1 | docker rmi -f [image_id]/[image_name] |
¶5、查看容器列表
1 | docker ps -a 或 docker container ls -a |
¶6、删除某个容器
1 | docker rm -f [container_id]/[container_name] |
¶7、查看正在运行的容器列表
1 | docker ps 或 docker container ls |
¶8、复制主机的文件到容器内
1 | docker cp test.sh [container_id]:/mnt/ |
¶9、进入容器
1 | docker exec -it [container_id]/[container_name] /bin/bash |
¶10、进入容器并执行脚本
1 | docker exec -it [container_id]/[container_name] /bin/bash /mnt/test.sh |
¶11、开始/停止某个容器
1 | docker start/stop [container_id]/[container_name] |
¶12、重命名容器
1 | docker rename old_name new_name |
¶13、停止所有容器
1 | docker-compose stop |
¶14、docker cp
1 | # docker cp --help |
¶14、基于 Dockerfile 创建镜像
注意
不要丢失 build 命令后的.
1 | docker build -t IMAGE_REPOSITORY:IMAGE_TAG . |
或
1 | docker build -f DockerfilePHP -t IMAGE_REPOSITORY:IMAGE_TAG . |
指令解释:
-t
指定镜像标签-f
指定生成镜像默认的依赖文件,不使用时,默认依赖当前路径下的 Dockerfile 文件
运行完上述命令后可以运行docker images
查看生成了新镜像