首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Docker上使用系统的CentOS

在Docker上使用系统的CentOS
EN

Stack Overflow用户
提问于 2017-02-17 00:50:19
回答 4查看 1.1K关注 0票数 2

我实际上正在使用Gitlab-CI对我的剧本进行自动化测试,Ubuntu工作得非常好,没有任何问题。

实际上我遇到的问题是CentOS和Systemd,首先是攻略(在CentOS7中安装Postgres9.5):

代码语言:javascript
复制
- name: Ensure PostgreSQL is running
  service:
    name: postgresql-9.5
    state: restarted
  ignore_errors: true   
  when:
    - ansible_os_family == 'RedHat'

所以,如果我想在容器中启动postgres,这是我得到的结果:

代码语言:javascript
复制
Failed to get D-Bus connection: Operation not permitted\nFailed to get D-Bus connection: Operation not permitted\nFailed to get D-Bus connection: Operation not permitted\nFailed to get D-Bus connection: Operation not permitted\nFailed to get D-Bus connection: Operation not permitted\n

我已经不得不在特权模式下运行Container,使用c-group和其他任何东西。已经尝试了不同的Docker容器,但都不起作用。

EN

回答 4

Stack Overflow用户

发布于 2017-02-17 10:14:59

当使用docker时,我认为使用postgres启动服务器会更好。命令类似

代码语言:javascript
复制
postgres -D /opt/postgresql/data/ > /var/log/postgresql/pg_server.log 2>&1 &
票数 0
EN

Stack Overflow用户

发布于 2017-02-18 01:34:15

当你使用docker时,你没有一个功能齐全的systemd。

您可以使用@KJocker建议的解决方案来制作postgresql函数容器。或者,您可以将systemd配置为在容器内工作,这里是一个文档check

票数 0
EN

Stack Overflow用户

发布于 2017-03-23 23:24:50

在Docker容器上使用Ansible时,我也遇到了同样的情况。我已经为此编写了一个docker-systemctl-replacement。它适用于PostgreSQL -不需要更改Ansible脚本,它可以在真实计算机上的部署中保持这种方式。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42280065

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档