1、Docker基本命令
#启动Docker
systemctl start docker
#停止Docker
systemctl stop docker
#重启Docker
systemctl restart docker
#开机启动Docker
systemctl enable docker
#查看Docker概要信息
docker info
#查看Docker帮助文档
docker --help
#查看Docker版本信息
docker version
2、Docker镜像常用命令
#列出本机所有镜像
docker images [options]
options可为以下参数
-a:显示所有镜像(包括中间层)
-q:只显示镜像ID
-qa:可以组合
--digests:显示镜像的摘要信息
--no-trunc:显示完整的镜像信息
REPOSITORY |
镜像的仓库源 |
TAG |
镜像的标签(版本)同一个仓库有多个TAG的镜像,多个版本;我们用REPOSITORY:TAG来定义不同的镜像; |
IMAGE ID |
镜像ID,镜像的唯一标识 |
CREATE |
镜像创建时间 |
SIZE |
镜像大小 |
#下载镜像(不加TAG,默认下载最新版本latest)
docker pull 镜像名称:[TAG]
#删除单个镜像(如果不写TAG,默认删除最新版本latest)
docker rmi 镜像名称:[TAG]
有镜像生成的容器在运行时候会报错,删除失败;这时可以强制删除:
#强制删除镜像
docker rmi -f 镜像名称:[TAG]
#删除多个镜像(中间用空格隔开)
docker rmi -f 镜像名称1:[TAG] 镜像名称2:[TAG]
#删除全部镜像
docker rmi -f $(docker images -qa)
3、Docker容器常用命令
- Docker创建并启动容器
#Docker创建并启动容器
docker run [OPTIONS] IMAGE [COMMAND] [ARG...] --name="容器新名字":为容器指定一个名称;
-i:以交互模式运行容器,通常与-t或者-d同时使用;
-t:为容器重新分配一个伪输入终端,通常与-i同时使用;
-d: 后台运行容器,并返回容器ID;
-P: 随机端口映射,容器内部端口随机映射到主机的端口
-p: 指定端口映射,格式为:主机(宿主)端口:容器端口
#启动普通容器
docker run --name 别名 镜像ID
#启动交互式容器(运行一个容器,取别名,交互模式运行,以及分配一个伪终端,并且进入伪终端)
docker run -it --name 别名 镜像ID
注意:
1、启动普通容器的方式基本不用,没有伪终端,没有太大价值;
2、启动交互式容器的方式,容器一创建完毕,立即进入伪终端
#守护式方式创建并启动容器
docker run -di --name 别名 镜像ID
执行完命令后,终端依然在宿主机上
#端口映射
docker run -it -p 8888:8080 tomcat
docker run -it -P tomcat
- Docker列出容器
#Docker列出容器
docker ps [OPTIONS]
OPTIONS说明:
-a :显示所有的容器,包括未运行的。
-f :根据条件过滤显示的内容。
--format :指定返回值的模板文件。
-l :显示最近创建的容器。
-n :列出最近创建的n个容器。
--no-trunc :不截断输出。
-q :静默模式,只显示容器编号。
-s :显示总的文件大小。
#查看正在运行的容器
docker ps
#查看所有容器
docker ps -a
#显示最近创建的2个容器
docker ps -n 2
#查看停止的容器
docker ps -f status=exited
- Docker退出容器
#容器停止退出
exit
#容器不停止退出
ctrl+P+Q
- Docker进入容器
docker attach 容器ID or 容器名
注:不能进入停止的状态的容器
- Docker进入容器执行命令
docker exec -it 容器名称或者容器ID 执行命令
如:
docker exec -it tomcat02 ls -l /root/webapp02
直接操作容器,执行完回到宿主主机终端,我们一般用于启动容器里的应用,比如tomcat、nginx、redis、elasticsearch等等
- Docker启动容器
docker start 容器ID或者容器名
- Docker重启容器
docker restart 容器ID或者容器名
- Docker停止容器
docker stop 容器ID或者容器名
- 暴力删除,直接杀掉进程 (不推荐)
docker kill 容器ID或者容器名
- Docker删除容器
docker rm 容器ID
如果删除正在运行的容器会报错,如果我们需要删除的话,需要强制删除:
docker rm -f 容器ID
#删除多个容器(中间空格隔开)
docker rm -f 容器ID1 容器ID2
#删除所有容器
docker rm -f $(docker ps -qa)
- Docker容器日志
cd /var/lib/docker/containers/