Вот текущий Dockerfile, который я использую для установки zookeeper, а затем запуска его в контейнере CentOS:
FROM centos:7
RUN yum -y --quiet install wget && yum -y --quiet install java-11-openjdk && yum -y --quiet autoremove && yum clean all && rm -rf /var/cache/yum
RUN wget -q http://apache.forsale.plus/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz
RUN tar -xzf zookeeper-3.4.14.tar.gz
RUN mv zookeeper-3.4.14 /opt/zookeeper
RUN cp /opt/zookeeper/conf/zoo_sample.cfg /opt/zookeeper/conf/zoo.cfg
EXPOSE 2181 2888 3888
WORKDIR /opt/zookeeper
VOLUME ["/opt/zookeeper/conf", "tmp/zookeeper"]
ENTRYPOINT ["/opt/zookeeper/bin/zkServer.sh"]
CMD ["start-foreground"]
Что меня больше всего смущает, так это то, как я могу заставить две службы работать как отдельные образы / контейнеры и все же взаимодействуют друг с другом. { ссылка }
Я также не совсем понимаю, как бы настроить его как кластер. Я бы предпочел не использовать docker compose, если это возможно.