一. 安装环境Linux Centos 7
二. 安装步骤(线上安装)
- 先确定你要安装docker的机器上是否有java环境,若没有请先配置java环境;
- 接下来开始执行命令进行安装
2.1 配置仓库
第一条命令:sudo yum install -y yum-utils device-mapper-persistent-data lvm2
第二条命令:sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
2.2 可以选择是否开启edge和test仓库( 如果没有报错此处命令不用执行)
上面用到了yum-config-manager命令,如果提示未找到此命令,执行下面的命令:
sudo yum-config-manager --enable docker-ce-edge
sudo yum-config-manager --enable docker-ce-test
sudo yum-config-manager --disable docker-ce-edge
sudo yum-config-manager --disable docker-ce-test
3. 安装docker-ce
3.1 安装前先查看你要安装的版本
第三条命令: yum list docker-ce --showduplicates | sort -r
3.2 安装docker最新版执行的命令( 默认安装最新版3:18.09.6版)
第四条命令: sudo yum install docker-ce
或者也可以指定版本进行安装: sudo yum install docker-ce-3:18.09.6
(小编在执行此命令时一直失败,找了各种方法还是失败)
在安装过程中需要进行两次确认,以下为第一次确认,输入 y 然后回撤继续执行
第一次确认后会继续进行下载所需的文件
以下为第二次确认,输入 y 然后回撤继续执行
静等片刻后会看到安装成功,如下图:
4. 启动docker并加入开机启动
第五条命令:sudo systemctl start docker
第六条命令:sudo systemctl enable docker
5. 关闭docker-daemon
第七条命令:sudo systemctl stop docker
第八条命令:sudo systemctl disable docker
6. 添加内核参数
6.1 默认配置下,如果在 CentOS 使用 Docker CE 看到下面的这些警告信息:
WARNING: bridge-nf-call-iptables is disabled
WARNING: bridge-nf-call-ip6tables is disabled
所以我们添加了内核配置参数以启用这些功能,即:执行下面这一段命令,表示在sysctl.conf文件中添加net.bridge.bridge-nf-call-ip6tables = 1和 net.bridge.bridge-nf-call-iptables = 1这两项配置。
第九条命令:
**
sudo tee -a /etc/sysctl.conf <<-EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
**
6.2 添加完上面两项配置后,再重新加载 sysctl.conf 即可
第十条命令:sudo sysctl -p
7. 添加镜像加速器
7.1 国内从 Docker Hub 拉取镜像有时会遇到困难,此时可以配置镜像加速器。Docker 官方和国内很多云服务商都提供了国内加速器服务。对于使用 systemd 的系统,请在 /etc/docker/daemon.json 中写入如下内容(如果文件不存在请新建该文件,创建文件命令 touch daemon.json)
{
"registry-mirrors": [
"https://registry.docker-cn.com"
]
}
第十一条命令: vim /etc/docker/daemon.json
按 i 键, 把上面的信息添加到daemon.json文件中,再按ESC键,再输入 :wq 回撤即可
7.2 添加完镜像后,需要重启服务:
第十二条命令: sudo systemctl daemon-reload
第十三条命令: sudo systemctl restart docker
8. 开启docker远程访问API
8.1 Docker可以监听远程端口实现远程调用API,网上关于Docker如何修改配置实现HTTP API调用很多,大致配置方法如下:
第十四条命令 :修改配置文件: vim /usr/lib/systemd/system/docker.service
在ExecStart后面增加-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
,添加完成后内容如下(docker端口号默认为2375,端口可根据个人喜好设定,不冲突就好):
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
8.2 需要再次重启Docker程序:
第十五条命令: systemctl daemon-reload
第十六条命令:systemctl restart docker
9. 防火墙开启docker端口
第十七条命令:iptables -I INPUT -p tcp --dport 2375 -j ACCEPT
第十八条命令:service iptables save
第十九条命令:service iptables restart
重启防火墙后我们可以在其他机器上访问刚刚搭建的docker服务了(访问地址: http://docker服务所在机器的IP:2375/info),看到一大堆信息后表明已经可以远程访问了