2017-03-17 105 views
1

我目前使用kitchen-docker驱动程序为我的test kitchen运行,以加快我们的自动食谱测试。厨房 - 码头和系统

然而,在玩了一段时间后,我发现每个厨房运行失败,如果涉及任何配方service资源,如果我尝试停止/启动/重新启动服务,这是不允许在容器内和运行失败。

如果我使用kitchen login容器内,每次我试图用systemctl ...我收到此错误信息:

[[email protected] ~]$ sudo systemctl restart foo 
Failed to get D-Bus connection: Operation not permitted 

有什么办法解决这一问题?我目前正在使用.kitchen.yml中的选项privileged: true运行此映像。

+0

这是众多原因之一,即使作为厨房码头的维护者,我推荐大多数人使用dokken。 – coderanger

+0

是否有任何计划可以随时解决此问题Soon®或者我应该跳入Kitchen-Dokken并且永不回头? – Navarro

+0

我的意思是它本身并不能解决问题,只是这个dokken对这个模型更好。 – coderanger

回答

3

,因为我没有做出举动厨房多肯尚未为好,这里是我用来使systemd厨房泊坞窗的配置:

driver: 
    name: docker 
    run_command: /bin/systemd 
    cap_add: 
    - SYS_ADMIN 
    volume: 
    - /sys/fs/cgroup 

警告:我假设您熟悉赋予容器SYS_ADMIN功能的含义(在主机系统上相当于root,请阅读more)。

+0

好主意!但我不认为我应该在许多人会使用代理的环境中使用这种方法,测试...虽然个人用法仍然很棒。 – Navarro