安装的环境
- CentosOS 7 3.10.0-862.14.4.el7.x86_64
- 内存512M
- cpu单核
首先卸载之前的旧版本(参照官方文档)
1 | $ sudo yum remove docker \ |
设置安装环境和安装源
- 配置安装的环境
1
2
3$ sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2 - 配置安装源
1
2
3$ sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo安装DOCKER CE
命令行运行的过程中会出现提示,官方文档说要与它所展示的一致才可以信任文档地址1
2$ sudo yum install docker-ce
输入y
继续
如果想要安装特定版本的话可以参照相应文档(INSTALL DOCKER CE)的第2点
启动Docker
1 | $ sudo systemctl start docker |
运行官方的Hello-World程序
1 | $ sudo docker run hello-world |
遇到的问题
- 非root用户执行Docker命令
在命令前添加sudo来执行命令,或者将用户加入docker组1
2
3
4sudo groupadd docker #添加docker用户组
sudo gpasswd -a $USER docker #将登陆用户加入到docker用户组中
newgrp docker #更新用户组
docker ps #测试docker命令是否可以使用sudo正常使用 - Centos7中docker开启远程访问(Centos7 docker remote access configure)方式来源
(建议没有需求就不要开启,开启也请指定特定IP可连接)
在作为docker远程服务的centos7机器中配置:
- 在/usr/lib/systemd/system/docker.service,配置远程访问。主要是在[Service]这个部分,加上下面两个参数
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock
- docker重新读取配置文件,重新启动docker服务
1
2$ systemctl daemon-reload
$ systemctl restart docker - 查看docker进程,发现docker守护进程在已经监听2375的tcp端口
1
$ ps -ef|grep docker
- 查看系统的网络端口,发现tcp的2375端口,的确是docker的守护进程在监听
1
$ lsof -i:2375
- 我使用另一台服务器当作客户端,来访问centos7的docker服务,访问成功。
1
$ sudo docker -H tcp://192.168.1.113:2375 images
注:如果修改后没起作用,可能需要防火墙开启相应的Docker端口。