Я хочу создать контейнер Docker с экземпляром Mon go. В частности, я хотел бы создать набор реплик только с одним узлом (поскольку меня интересуют транзакции, и они доступны только для наборов реплик).
Dockerfile
FROM mongo
RUN echo "rs.initiate();" > /docker-entrypoint-initdb.d/replica-init.js
CMD ["--replSet", "rs0"]
docker -compose.yml
version: "3"
services:
db:
build:
dockerfile: Dockerfile
context: .
ports:
- "27017:27017"
Если я использую один Dockerfile, то все в порядке, а если я использую docker -compose, он не работает: фактически, если я затем войду в контейнер, то получу предложено rs0:OTHER>
вместо rs0:PRIMARY>
.
Я обращался к этим ссылкам, но предложенные решения не работают:
https://github.com/docker-library/mongo/issues/246#issuecomment -382072843 https://github.com/docker-library/mongo/issues/249#issuecomment -381786889