docker升级时遇到的一些小问题

 今天心血来潮把自己的docker升级了一下,记录一下过程!

 我的系统是centOS7,docker版本为1.9.1。我尝试yum -y update升级了系统,docker自动升级到了1.10.3版本,当我高高兴兴地以为升级成功,重启docker,发现docker启动不起来了!

 查看/var/log/message看到如下信息:

wKioL1eTD1fiC_GHAACLxvfFGfg943.png 可以看到docker storage与docker container engine都报错。


 注:docker在现在的版本中会默认使用lvm的逻辑卷vg来当作它的存储方式,这里我的系统中没有配置LVM,所以找不到VG,这时它会直接应用本地文件系统当作存储,这里报错不影响。


 但是如下报错却一直找不到解决方案,我查看了我的配置/etc/sysconfig/docker,发现我的配置如下:

1
OPTIONS= '--selinux-enabled -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock --cluster-store=zk://192.168.1.218:2181,192.168.1.220:2181,192.168.1.207:2181/store --cluster-advertise=192.168.1.120:2375'

 我在启动文件中配置了zookeeper存储,定义了docker的端口等。

 当我把配置清空,发现docker启动正常,所以我在想是否是因为我的配置出现问题。但是一添加定义端口的相关配置,docker就启动不起来了。

 这时我想到了直接修改启动脚本的方式,把/etc/sysconfig/docker中的启动项直接写到docker的系统启动脚步中:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#vim /usr/lib/systemd/system/docker.service
[Unit]
Description=Docker Application Container Engine
Documentation=http: //docs .docker.com
After=network.target
Wants=docker-storage-setup.service
[Service]
Type=notify
NotifyAccess=all
EnvironmentFile=- /etc/sysconfig/docker
EnvironmentFile=- /etc/sysconfig/docker-storage
EnvironmentFile=- /etc/sysconfig/docker-network
Environment=GOTRACEBACK=crash
ExecStart= /bin/sh  -c ' /usr/bin/docker-current  daemon \
           -- exec -opt native.cgroupdriver=systemd \
           -H tcp: //0 .0.0.0:2375 -H unix: ///var/run/docker .sock --cluster-store=zk: //192 .168.1.218:2181,192.168.1.220:2181,192.168.1.207:2181 /store  --cluster-advertise=192.168.1.121:2375 \
           $OPTIONS \
           $DOCKER_STORAGE_OPTIONS \
           $DOCKER_NETWORK_OPTIONS \
           $ADD_REGISTRY \
           $BLOCK_REGISTRY \
           $INSECURE_REGISTRY \
           2>&1 |  /usr/bin/forward-journald  -tag docker'
LimitNOFILE=1048576
LimitNPROC=1048576
LimitCORE=infinity
TimeoutStartSec=0
MountFlags=slave
Restart=on-abnormal
StandardOutput=null
StandardError=null
[Install]
WantedBy=multi-user.target


 重新启动docker,发现docker启动成功!!          

 查看docker进程,如下:

wKiom1eTEt3hYjHZAABimZz1L7A423.png 可以发现OPTIONS中配置的选项似乎没有加载进启动程序,不知道这是1.10版本的新特性还是什么?从启动脚本中也可以看到1.10版本中,docker的启动命令也变成了docker-current,这也是与旧版本docker有一个很大的不同。

 是不是/etc/sysconfig/docker文件以后就失去作用了呢?希望有大神回答!










本文转自 icenycmh 51CTO博客,原文链接:http://blog.51cto.com/icenycmh/1829109,如需转载请自行联系原作者
优秀的个人博客,低调大师

微信关注我们

原文链接:https://yq.aliyun.com/articles/481457

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
优质分享Android(本站安卓app)

优质分享Android(本站安卓app)

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

Oracle Database,又名Oracle RDBMS

Oracle Database,又名Oracle RDBMS

Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的、适应高吞吐量的数据库方案。

Apache Tomcat7、8、9(Java Web服务器)

Apache Tomcat7、8、9(Java Web服务器)

Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。

Java Development Kit(Java开发工具)

Java Development Kit(Java开发工具)

JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。