官网链接:link
1.基本命令
docker version #查看docker的版本信息
docker info #查看docker的详细信息
docker --help #帮助查看docker的所有命令
2.docker镜像的常用命令
查看所有的镜像
docker images # 查看所有的镜像
-a:列出所有的镜像(包含中间镜像)
-q;只显示镜像的id
- repository:镜像的仓库源
- tag:镜像标签(版本)
- image id:镜像id
注:同一个仓库源可以有多个tag,通过repository:tag来确定镜像。如果不写tag
默认为latest.如写 docker run hello-world相当于docker run hello-world:latest
搜索镜像
docker search 镜像名 # 去仓库里面查询所有的该镜像
-s 指定值 # 列出收藏数不少于指定值的镜像
--no-trunc # 不截断输出(默认截断过长的列) 完整展示
拉取镜像
docker pull 镜像名:tag # 下载镜像,不写tag则默认是latest
删除镜像
docker rmi 镜像名:tag # 删除镜像,若存在正在运行的容器无法删除
-f # 强制删除镜像,有容器运行也可以删除
docker rmi 镜像名1:tag1 镜像名2:tag2 # 删除多个镜像
docker rmi -f $(docker images -qa) # 删除全部镜像
3.容器的常用命令
创建并运行容器
docker run [OPTIONS] 镜像名 [cmd] # 镜像名新建并启动容器
-i # 以交互模式运行容器,通常与-t同时使用
-t # 为容器重新分配一个伪终端,通常与-i同时使用
--name 别名 # 为容器指定一个名字
-d # 启动守护式容器(在后台启动容器),并返回容器ID
-p 映射端口号:原始端口号 # 指定端口号启动,指定端口映射
-P # 主机自动分配端口号,随机端口映射
-v # 卷挂载
-e # 环境配置
--volumes-from # 容器间数据共享
常用命令:
docker run -it --p 8888:8080 centos
#新建运行容器,开启一个终端(进去容器里面了),能够操作容器,指定端口映射
docker run -it --name mytest -P centos
# 多了个给容器起别名,随机分配端口映射
docker run -d -P centos
# 以后台方式启动容器,注意以后台的方式运行,前台必须有一个进程,否则该容器会自动停止运行
列举容器
docker ps [OPTIONS] #列举出正在运行的容器
-a #显示所有的容器,包括未运行的。
-l #显示最近创建的一个容器
-n 数值 #显示最近n个创建的容器
-q #静默模式,只显示容器编号
--no-trunc #不截断输出(默认截断过长的列) 完整展示
- container id: 容器id
- image:镜像id
- status: 容器的运行状态及时间
- port:端口号
- names: 容器名
退出容器
exit #容器停止退出
Ctrl+p+q #容器不停止退出
开启容器
docker start 容器名字/容器id #开启容器
docker restart 容器名字/容器id #重启容器
停止容器
docker stop 容器名字/容器id #正常停止容器运行
docker kill 容器名字/容器id #立即停止容器运行
删除容器
docker rm 容器名字/容器id #删除停止的容器
docker rm -f 容器名字/容器id #删除正在运行的容器
docker rm -f $(docker ps -aq) #删除所有容器
查看容器的日志
docker logs [OPTIONS] 容器名字/容器id
-t #加入时间
-f #跟随最新的日志打印
--tail 数字 #显示最后多少条
查看容器的详情
docker inspect 容器名字/容器id # 查看容器内部的细节
进入容器内部
docker attach 容器名字/容器id # 进入容器
docker exec [options] 容器名字/容器id 容器内命令 # 可以进入容器操作,也可以在容器外操作
-i #以交互模式运行容器,通常与-t一起使用
-t #分配一个伪终端
命令:
docker exec -it 容器id /bin/bash # 进入容器,相当于docker attach命令
docker exec -it 容器id ls # 没有进去,查看容器根目录下的列表
容器和宿主机数据之间的拷贝
docker cp 容器名字/容器id:容器内资源路径 宿主机目录路径 # 将容器内资源拷贝到主机上
docker cp 宿主机目录路径 容器名字/容器id:容器内资源路径 # 将主机内资源拷贝到容器中
根据容器提交新的镜像
docker commit -a="作者" -m="描述信息" 容器ID 目标镜像名称:TAG # 将一个容器打包成一个镜像
查看容器内存使用情况
docker stats 容器id #查看容器内存使用情况,不写id表示查看所有的容器