帮助命令:
docker version 看版本
docker info 看信息
docker 命令 --help #帮助命令
镜像命令:
docker images 查看所有本地的主机上的镜像
# 解释
repository:镜像的仓库源
tag:仓库的标签
image id:镜像的id
created:镜像的创建时间
size:镜像的大小
# 可选项
Options:
-a, --all 显示所有镜像
-q, --quiet 只显示镜像的id
docker search 搜索镜像
docker pull 下载镜像
分层下载:部分可以共用的,就不需要重复下载了,如上图,前几个,不同版本之间还是有共用的地方, 所以这就是docker分层下载的好处
docker rmi 删除镜像
容器命令:
说明:我们有了镜像才可以创建容器,linux,下载一个centos镜像来测试学习
docker pull centos
新建容器并启动
docker run [可选参数] image
# 参数说明
--name = "name" 容器名称 tomcat01 tomcat02,用来区分容器
-d 后台方式运行
-it 使用交互方式运行,进入容器查看内容
-p 指定容器的端口 -p 8080:8080
-p ip:主机端口:容器端口
-p 主机端口:容器端口(常用的一种方式,另外三 种不常用)
-p 容器端口
容器端口
-P 随机指定端口
可以通过ls查看容器内的centos,基础版本,很多命令都不是完善的
退出容器的交互模式:
exit #直接容器停止并退出
Ctrl + P + Q #容器不停止退出
列出所有正在运行的容器:
docker ps
#列出所有当前正在运行的容器
-a #列出所有正在运行的并包括曾经运行的容器
-n=? #显示最近创建的n个容器
-q #只显示容器的编号
删除容器:
docker rm 容器id #删除指定的容器,不能删除正在运行的容器,如果要强制删除,就要使用 rm -f
docker rm -f $(docker ps -aq) #删除所有的容器
docker ps -a -q|xargs docker rm #删除所有的容器
启动和停止容器的操作
docker start 容器id #启动容器
docker restart 容器id #重启容器
docker stop 容器id #停止当前正在运行的容器
docker kill 容器id #强制停止当前容器
常用其他命令:
后台启动容器:
#命令 docker run -d 镜像名
docker run -d centos
#问题docker ps后发现没有centos的容器
#这个问题比较常见:原因:
#docker ,容器使用后台运行,就必须要有一个前台进程,docker发现没有应用,就会自动停止,比如:nginx:容器启动后,发现自己没有提供服务,就会立刻停止,就是没有程序了,所以可以加上 lt参数
查看日志:
docker logs -tf --tail 数目 容器id
查看容器中进程信息ps
docker top 容器id
查看镜像的元数据:
docker inspect 容器id
进入当前正在运行的容器
#我们通常容器都是使用后台方式运行的,需要进入容器,修改配置
docker exec -it 容器id /bin/bash #进入容器后开启一个新的终端,可以在里面操作(常用)
docker attach 容器id #进入容器正在执行的终端,不会启动新的进程
linux新建文件:
touch 文件
从容器内拷贝文件到主机上:
docker cp 容器id:容器内路径 目的的主机路径