docker命令
帮助命令:
docker version
docker info
docker --help
docker images [options] 列出本地镜像 -a:列出本地所有镜像(包含中央映像层) -q: 只显示镜像id --digests: 显示镜像摘要信息 --no-trunc:显示完整的镜像信息
docker search [options] 镜像名字
--no-trunc:显示完整的镜像信息
-s : 列出收藏不小于指定值得镜像
--automated: 只列出automated build类型的镜像
拉取镜像:
docker pull 镜像名字:[tag] 下载镜像 tag 版本
docker pull registry.docker-cn.com/library/ tomcat
删除镜像
docker rmi 镜像名字|id
删除单个:docker rmi -f 镜像id
删除多个:docker rmi -f 镜像名 :tag 镜像名2:tag
删除全部:docker rmi -f$(docker images -qa)
容器命令
新建并启动容器:
docker run [options] image [command]
例:
docker run -it -p 8080:8080 --name tomcat 41a54fe1f79d
--name="容器新名字": 为容器指定一个名称;
-d: 后台运行容器,并返回容器ID,也即启动守护式容器;
-i:以交互模式运行容器,通常与 -t 同时使用;
-t:为容器重新分配一个伪输入终端,通常与 -i 同时使用;
-P: 随机端口映射;
-p: 指定端口映射,有以下四种格式
ip:hostPort:containerPort
ip::containerPort
hostPort:containerPort
containerPort
使用镜像centos:latest以交互模式启动一个容器,在容器内执行/bin/bash命令。
docker run -it centos /bin/bash
docker ps [options] 查看所有正在运行的容器
-a :列出当前所有正在运行的容器+历史上运行过的
-l :显示最近创建的容器。
-n:显示最近n个创建的容器。
-q :静默模式,只显示容器编号。
--no-trunc :不截断输出。
退出容器:
eixt容器停止退出
ctrl+P+Q:容器不停止退出
启动容器:
docker start [name|id]
重启容器:
docker restart [name|id]
停止容器:
docker stop[name|id]
强制停止:
docker kill [id]
删除以停止的容器
docker rm [name|id]
docker rm -f [id] 强制删除
批量删除容器
docker rm -f $(docker ps -a -q)
进入正在运行的容器并以命令行交互
docker exec -it 容器ID bashShell直接在容器外面执行shell docker exec -it 容器ID /bin/bash 进入容器 docker attach 容器ID
attach 直接进入容器启动命令的终端,不会启动新的进程
exec 是在容器中打开新的终端,并且可以启动新的进程
从容器内拷贝文件到主机上
docker cp 容器ID:容器内路径 目的主机路径
提交镜像:
docker commit -a="作者" -m="信息" 容器id 镜像名
查看容器日志 docker logs -f -t --tail 容器ID
* -t 是加入时间戳
* -f 跟随最新的日志打印
* --tail 数字 显示最后多少条
查看容器内运行的进程 docker top 容器ID
查看容器内部细节 docker inspect 容器ID
启动守护式容器:docker run -d 容器名
使用镜像centos:latest以后台模式启动一个容器
容器数据卷:
添加数据卷:
docker run -it -v /宿主机绝对路径目录:/容器内目录 镜像名
docker run -it -v /宿主机绝对路径目录:/容器内目录:ro 镜像名 (只读)