From 07bd6fd09b4601247c8dde29872c2582c66a12ab Mon Sep 17 00:00:00 2001 From: debian Date: Sat, 17 Feb 2024 18:13:15 +0100 Subject: [PATCH] add mongodb support --- docker-compose.yml | 2 ++ project/db/mongo-express/mongo-express.yml | 23 ++++++++++++++++++++++ project/db/mongodb/mongodb.yml | 18 +++++++++++++++++ 3 files changed, 43 insertions(+) create mode 100644 project/db/mongo-express/mongo-express.yml create mode 100644 project/db/mongodb/mongodb.yml diff --git a/docker-compose.yml b/docker-compose.yml index bb3bef3..7f1e6fe 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -9,6 +9,8 @@ include: - ${DB_PATH}/adminer/adminer.yml - ${DB_PATH}/lldap/lldap.yml - ${DB_PATH}/mariadb/mariadb.yml + - ${DB_PATH}/mongodb/mongodb.yml + - ${DB_PATH}/mongo-express/mongo-express.yml - ${DB_PATH}/postgres/postgres.yml - ${DB_PATH}/pgadmin/pgadmin.yml - ${DB_PATH}/redis/redis.yml diff --git a/project/db/mongo-express/mongo-express.yml b/project/db/mongo-express/mongo-express.yml new file mode 100644 index 0000000..38ca603 --- /dev/null +++ b/project/db/mongo-express/mongo-express.yml @@ -0,0 +1,23 @@ +services: + mongo-express: + extends: + file: ${TEMPLATES_PATH} + service: default + image: mongo-express + container_name: mongo-express + ports: + - 8086:8081 + environment: + ME_CONFIG_BASICAUTH_USERNAME: ${MONGO_EXPRESS_USERNAME} + ME_CONFIG_BASICAUTH_PASSWORD: ${MONGO_EXPRESS_PASSWORD} + ME_CONFIG_MONGODB_ADMINUSERNAME: ${MONGO_EXPRESS_USERNAME} + ME_CONFIG_MONGODB_ADMINPASSWORD: ${MONGO_EXPRESS_PASSWORD} + ME_CONFIG_MONGODB_URL: mongodb://${MONGO_DB_USERNAME}:${MONGO_DB_ROOT_PASSWORD}@mongodb:27017/ + labels: + # Watchtower + - "com.centurylinklabs.watchtower.enable=true" + # Traefik + - "traefik.enable=true" + - "traefik.http.routers.mongo-express.rule=Host(`mongo-express.${LOCAL_DOMAIN}`)" + - "traefik.http.routers.mongo-express.entrypoints=https" + - "traefik.http.routers.mongo-express.tls=true" \ No newline at end of file diff --git a/project/db/mongodb/mongodb.yml b/project/db/mongodb/mongodb.yml new file mode 100644 index 0000000..4ceecf1 --- /dev/null +++ b/project/db/mongodb/mongodb.yml @@ -0,0 +1,18 @@ +services: + mongodb: + extends: + file: ${TEMPLATES_PATH} + service: default + image: mongo:latest + container_name: mongodb + expose: + - 27017 + environment: + MONGO_INITDB_ROOT_USERNAME: ${MONGO_DB_USERNAME} + MONGO_INITDB_ROOT_PASSWORD: ${MONGO_DB_ROOT_PASSWORD} + volumes: + - ${DB_PATH}/mongodb/data:/data/db + - ${DB_PATH}/mongodb/init/mongo-init.sh:/docker-entrypoint-initdb.d/mongo-init.sh:ro + labels: + # Watchtower + - "com.centurylinklabs.watchtower.enable=true" \ No newline at end of file