一、什么是Docker?
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
Docker是基于Linux 64bit的,无法在32bit的linux/Windows/unix环境下使用,所以今天我们在CentOS系统上安装Docker。
二、安装Docker
本次的安装在CentOS8的系统环境下安装,如果不会安装CentOS系统的,可以参考我的博客:
一篇博客教会你怎么安装CentOS系统
1、更新yum源为最新
2、安装需要的软件包
yum-utils提供yum-config-manager功能,另外两个是devicemapper驱动依赖
1
| sudo yum install -y yum-utils device-mapper-persistent-data lvm2
|
3、设置yum源为阿里云
1
| sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
|
可以通过 yum repolist
命令查看是否已有docker-ce-stable
仓库。
4、安装docker
1
| sudo yum install docker-ce --nobest
|
5、查看安装版本
安装成功后,可以使用docker -v
命令来查看docker版本。
三、设置Docker的国内镜像
如果使用Docker提供的国外镜像,下载或者说拉取文件的时候速度会非常慢,所以我们直接修改Docker的镜像为国内镜像,这样拉取文件的速度就会非常快。
1、编辑文件
1
| vi /etc/docker/daemon.json
|
2、在该文件中输入如下内容
1
| {"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]}
|
四、启动Docker服务
1、启动Docker服务
2、查看Docker服务状态
3、停止Docker服务
4、重启Docker服务
1
| systemctl restart docker
|
5、设置Docker服务开机自启
五、Docker常用命令
1、Docker在线帮助文档
2、查看Docker概要信息
3、镜像相关命令
3.1、查看本地已有镜像
REPOSITORY |
TAG |
IMAGE ID |
CREATED |
SIZE |
镜像名称 |
标签 |
镜像ID(唯一) |
镜像创建时间 |
镜像占用大小 |
3.2、搜索镜像
NAME |
DESCRIPTION |
STARS |
OFFICIAL |
AUTOMATED |
镜像名称 |
描述 |
星(代表好评) |
是否官方提供 |
是否由DockerHub自动构建 |
3.3、拉取镜像
3.4、删除镜像
1 2 3 4 5 6
| docker rmi [镜像名称]
docker rmi [镜像ID]
docker rmi `docker images -q`
|
4、容器相关命令
4.1、查看运行中容器
1 2 3 4 5 6 7 8
| docker ps
docker ps -a
docker ps -l
docker ps -f status=exited
|
CONTAINER ID |
IMAGE |
COMMAND |
CREATED |
STATUS |
PORTS |
NAMES |
容器ID |
镜像名称 |
运行命令 |
创建时间 |
状态 |
端口映射关系 |
容器名称 |
4.2、创建容器
1 2 3 4 5 6 7 8 9 10 11 12 13
| docker run
-i
-t
--name
-v
-d
-p
|
4.3、退出容器
在容器内执行命令
4.4、停止容器
1 2 3 4
| docker stop [容器名称]
docker stop [容器ID]
|
4.5、运行容器
1 2 3 4
| docker start [容器名称]
docker start [容器ID]
|
4.6、文件拷贝
1 2 3 4
| docker cp [文件名称] [容器名称]:/[目录1]/[目录2]
docker cp [容器名称]:/[目录1]/[文件名称] /[目录1]/[目录2]
|
4.7、目录挂载
1 2
| docker run -di -v /[目录]/[文件名称]:/[目录]/[文件名称] --name=[容器名称]
|
4.8、查看容器IP地址
1
| docker inspect --format='{{.NetworkSetings.IpAddress}}' [容器名称]
|
4.9、删除容器