我在 Dockerfile 下构建了一个用于 postgresql 的 docker 镜像。映像和 docker 容器已创建,但无法运行该容器。由于在这种情况下docker不支持systemd,我怎样才能让它在后台运行?任何人都请告诉我。
FROM centos
RUN sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-Linux-*
RUN sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-Linux-*
RUN dnf -y install https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
RUN dnf -qy module disable postgresql
RUN dnf install postgresql12-server postgresql12-contrib -y
RUN yum install wget -y
RUN wget https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
RUN /usr/pgsql-12/bin/postgresql-12-setup initdb
RUN yum install repmgr12 -y
RUN /usr/pgsql-12/bin/pg_ctl -D /var/lib/pgsql/12/data
CMD ["postgres"]
错误是:系统尚未使用 systemd 作为 init 系统 (PID 1) 启动。不能操作。无法连接到总线:主机已关闭无法在 postgresql-12.service 中找到 PGDATA 设置
注意:基本上我打算在 docker 中使用 repmgr 制作 PostgreSQL 集群。