很不凑巧的,这个星期都在docker与systemd之间战斗啊。

实体机是CentOS7,所以是Systemd管Docker。

而虚机中则变成Docker管systemd了。

两个软件互相打架,真是受不了

说说事情的来由,oneapm搞活动,想拿他家那个xbox,因为是cloudinsight,所以不需要开放外网端口,用lxc重了,决定趁这个机会上到centos7试试。

于是乎用centos7+最新版的docker,首先在容器内安装oneapm的agent有些问题,需要d-bus权限。

所以容器必须用这样的方式启动:

docker run --privileged -d -p 10000:80 centos:last /sbin/init  

这就是大混战的开始啊。

docker启动提了权,然后虚机再boot一版systemd。导致进程中充斥着systemd啊

这样装到第25台虚机的时候systemd再也无法容纳了。

只能降级CentOS7到6,然后再跑,这样跑的是个假的systemd,就是fakesystemd,这样容器跑到单机284个也没问题。

所以在真正的生产环境中,还是Centos6吧,这个战争不结束,就没办法大规模应用。除非是不提权的用法。

comments powered by Disqus