Docker常用命令
一、Docker启动和停止命令
1.1 开启Docker服务
#方式一
sudo service docker start
#方式二
systemctl start docker.service
1.2 查看Docker状态
systemctl status docker
1.3 停止Docker服务
systemctl stop docker
1.4 重启Docker服务
systemctl restart docker
二、Docker镜像相关操作
2.1 查看本地镜像
docker images
2.2 下载镜像
docker pull 软件名:版本号
# 如:
docker pull mysql:5.6
2.3 配置docker镜像加速
可以到https://hub.docker.com上去查看镜像支持版本;由于国内无法访问镜像仓库地址,因此这里切换到国内地址;这里使用阿里云提供的免费镜像地址。
申请阿里云容器镜像服务ACR https://www.aliyun.com/product/acr;申请成功后点击管理控制台,选择镜像中心->镜像加速获取地址。
编辑配置文件
vi /etc/docker/daemon.json
在里面加入如下配置(地址为你的加速地址):
{
"registry-mirrors": ["https://123456.mirror.aliyuncs.com"]
}
或者是网易的公共加速地址
{
"registry-mirrors": ["http://hub-mirror.c.163.com"]
}
2.4 删除已安装的镜像
# 方式一:
docker rmi [IMAGE ID]
#如:
docker rmi 232343
#方式二:
docker rmi [REPOSITORY]:[TAG]
#如:
docker rmi mysql:5.6
2.5 将本地镜像打包
docker save mysql:5.6 > /home/mysql5.6.tar.gz
2.6 加载本地镜像包
docker load < /home/mysql5.6.tar.gz
2.7 构建docker镜像
这种方式需要配置dockerbuild文件
docker build -t 镜像名称:版本号 .
三、容器相关操作
3.1 查看运行中的容器
docker ps
3.2 查看所有容器
docker ps -a
3.3 创建并运行容器
docker run -d --name "创建的容器名称" -p 外部端口:容器端口 镜像名称或镜像id
示例:
docker run -d --name nginx -p 8088:80 nginx
加上
--restart=always
参数后,可以实现在docker重启后容器自动启动
3.4 启动容器
docker start 容器ID或容器名称
3.5 停止容器
docker stop 容器ID或容器名称
3.6 重启容器
docker restart 容器ID或容器名称
3.7 查看容器运行日志
docker logs [OPTIONS] CONTAINER
Options:
--details 显示更多的信息
-f, --follow 跟踪实时日志
--since string 显示自某个timestamp之后的日志,或相对时间,如30m(即30分钟)
--tail string 从日志末尾显示多少行日志, 默认是all
-t, --timestamps 显示时间戳
--until string 显示自某个timestamp之前的日志,或相对时间,如30m(即30分钟)
- 查看最后500行的日志
docker logs -ft --tail 500 nginx
- 查看指定时间后的日志,只显示最后200行
docker logs -ft --since="2020-12-30" --tail=200 nginx
- 查看最近30分钟的日志
docker logs --since 30m nginx
- 查看某时间之后的日志
docker logs -t --since="2020-12-30T10:30:00" nginx
- 查看某时间段日志
docker logs -t --since="2020-12-29T10:30:00" --until "2020-12-30T10:30:00" nginx
3.8 进入docker容器
- 方式一(不建议使用)
docker attach 容器ID
attach命令在有多个窗口打开时,因为其为对每个窗口同步,因此一旦某个窗口阻塞了,其他的都会受影响
- 方式二
docker exec -it 775c7c9ee1e1 /bin/bash
3.9 复制docker中文件到宿主机上
# 将容器里面的文件拷贝到宿主机上
docker cp 容器ID:容器内文件路径 宿主机路径
# 将宿主机上的文件拷贝到容器里面
docker cp 宿主机路径 容器ID:容器内文件路径
3.10 删除容器
docker rm 容器ID或容器名称