1. 前置条件
在开始安装 Docker 之前,请确保您使用的操作系统已满足以下先决条件:
- 操作系统:64位版本的 Ubuntu(Bionic 18.04 或 Xenial 16.04)、Debian(Stretch 9)或 CentOS(7)
- 系统内核版本:3.10 以上
- 系统文件系统:ext4,xfs 或 btrfs
- 内存:至少为 1 GB
2. 卸载 Docker
以下使用的是 CentOS(7)演示,确保之前是否安装过旧版本docker, 可以使用下面命令卸载:
$ yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine \
docker-ce
3. Docker 安装
- 安装 yum 工具
$ yum install -y yum-utils \
device-mapper-persistent-data \
lvm2 --skip-broken
- 更新本地镜像源
# 添加 docker镜像源
$ yum-config-manager \
--add-repo \
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 替换阿里云镜像源地址
$ sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo
$ yum makecache fast # 手动更新缓存索引加速
- 安装 docker 社区版
$ yum install -y docker-ce
4.docker 启动
注意!!! 由于docker应用需要使用到多个端口,避免逐一修改防火墙设置。非常碍事,这里方便后续操作,统一进行关闭。如果在公司实际操作过程中则需要通过IT协助指定端口开通
# 检查防火墙是否开启
systemctl status firewalld
# 确定当前防火墙是否可用,开启:enabled 禁用:disabled
systemctl is-enabled firewalld
# 关闭防火墙
systemctl stop firewalld
# 禁止开机启动
systemctl disable firewalld
# 注意如果是Windows电脑下的虚拟机环境则不能关闭防火墙,因为Windows主机与虚拟机之间通信是通过防火墙IP路由实现,所以只能通过防火墙开通指定端口来进行访问。
# 防火墙状态
$ firewall-cmd --state
# 开启防火墙
$ systemctl start firewalld.service
# 设置开启自启动
$ systemctl enable firewalld.service
# 开启指定8080端口
$ firewall-cmd --zone=public --add-port=8080/tcp --permanent
# 查询指定端口是否开启
$ firewall-cmd --query-port=8080/tcp # 注意:开启之后需要重启防火墙
# 重启防火墙
$ firewall-cmd --reload # 注意 docker 服务也需要重新启动
# 查询防火墙开启端口列表
$ firewall-cmd --list-port
systemctl
命令启动docker服务
# 启动
$ systemctl start docker
# 开启启动
$ systemctl enable docker
# 停止
$ systemctl stop docker
# 重启
$ systemctl restart docker
查看 docker 运行状态
systemctl status docker
查看docker版本信息
docker -v
5.阿里云镜像加速
docker 官方镜像仓库网速较差,设置国内阿里云镜像服务:阿里云的镜像加速文档
修改daemon配置文件/etc/docker/daemon.json来使用加速器
- 创建docker目录
$ mkdir -p /etc/docker
- 创建 daemon.json 文件
$ tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://tj1qgxtg.mirror.aliyuncs.com"]
}
EOF
- 重新加载daemon
$ systemctl daemon-reload
- 重启 docker
$ systemctl restart docker
以上操作步骤就完成了docker的环境安装,需要注意其中防火墙的相关操作。
网友评论