Expor o MongoDB do contêiner docker

Expor o MongoDB do contêiner docker

Estou tentando expor meu mongodb que está sendo executado em um contêiner docker para ser acessível externamente.

Eu descobri que deveria ser possível com o docker compose ou o arquivo mongod.conf definir a ligação do host lá, mas como eu uso a imagem oficial do docker do mongodb, não fiz uma composição e não consigo encontrar o arquivo conf também.

aqui está o que eu fiz e o que tentei até agora:

  1. criou uma rede

rede docker criar meu-mongo-cluster

  1. executou 3 instâncias do mongo db

docker run --name mongo-node1 -d --net meu-mongo-cluster mongo --replSet "rs0" docker run --name mongo-node2 -d --net meu-mongo-cluster mongo --replSet "rs0" docker run --name mongo-node3 -d --net my-mongo-cluster mongo --replSet "rs0"

  1. executou o primeiro

    docker exec -it mongo-node1 mongo

  2. definir a configuração do conjunto de réplicas

config = { "_id": "rs0", "membros": [ { "_id": 0, "host": "mongo-node1:27017" }, { "_id": 1, "host": "mongo- node2:27017" }, { "_id": 2, "host": "mongo-node3:27017" } ] }

rs.initiate(config) rs.initialize

  1. criou um usuário administrador

    use admin db.createUser ({usuário: "admin", pwd: "admin", funções: [ {função: "userAdminAnyDatabase", banco de dados: "admin" }, >"readWriteAnyDatabase" ] } )

Tentei executar os contêineres com as seguintes instruções:

--expose=27017
--auth

--entrypoint 'mongod --bind_ip_all'

-> leva a um erro.

ele está sendo executado na AWS e a regra de entrada para 27017 está configurada corretamente.

A resposta é sempre:

couldn't connect to server ec2-52-59-191-1.eu-central-1.compute.amazonaws.com:27017, connection attempt failed: SocketException: Error connecting to ec2-52-59-191-1.eu-central-1.compute.amazonaws.com:27017 (52.59.191.1:27017) :: caused by :: No connection could be made because the target machine actively refused it. :

informação relacionada