Inicializando um mongodb com um script de inicialização em um docker-compose
Inicializando um MongoDB com um script de inicialização em um docker-compose. Também incluido um mongo-express para visualização/gerenciamento dos dados do mongo.
- Docker compose (docker-compose.yaml):
version: '3.8'
services:
# Database - Mongo DB
mongo:
image: mongo
environment:
MONGO_INITDB_ROOT_USERNAME: helpdev
MONGO_INITDB_ROOT_PASSWORD: 123456
ports:
- "27017:27017"
volumes:
- ./docker-entrypoint-initdb.d/mongo-init.js:/docker-entrypoint-initdb.d/mongo-init.js:ro
# Database Manager
mongo-express:
image: mongo-express
ports:
- 8099:8081
depends_on:
- mongo
environment:
ME_CONFIG_BASICAUTH_USERNAME: express
ME_CONFIG_BASICAUTH_PASSWORD: 123456
ME_CONFIG_MONGODB_PORT: 27017
ME_CONFIG_MONGODB_ADMINUSERNAME: helpdev
ME_CONFIG_MONGODB_ADMINPASSWORD: 123456
links:
- mongo
- Arquivo de init do mongo (mongo-init.js):
db = db.getSiblingDB('sample_db');
db.createCollection('sample_collection');
db.sample_collection.insertMany([
{
org: 'helpdev',
filter: 'EVENT_A',
addrs: 'http://rest_client_1:8080/wh'
},
{
org: 'helpdev',
filter: 'EVENT_B',
addrs: 'http://rest_client_2:8081/wh'
},
{
org: 'github',
filter: 'EVENT_C',
addrs: 'http://rest_client_3:8082/wh'
}
]);
Retirado de um Gist que criei: https://gist.github.com/gbzarelli/c15b607d62fc98ae436564bf8129ea8e