diff --git a/README.md b/README.md index fdfcd42..639fd38 100644 --- a/README.md +++ b/README.md @@ -45,6 +45,7 @@ Components by file - docker-compose.grafana.yml - Add grafana for [traffic visualisation](https://fastnetmon.com/docs-fnm-advanced/advanced-visual-traffic/)(need enabled clickhouse) - docker-compose.trafficdb.yml - enable [traffic persistence](https://fastnetmon.com/docs-fnm-advanced/fastnetmon-advanced-traffic-persistency/)(need enabled clickhouse) - docker-compose.web-api.yml - start [web API](https://fastnetmon.com/docs-fnm-advanced/advanced-api/) or with FNM_WEB_API_V2=true start [LiveView](https://fastnetmon.com/docs-fnm-advanced/fastnetmon-panel-ui-installation/) +- docker-compose.ferretdb.yml - use FerretDB instead of MongoDB ### Configure volumes and secrets ### diff --git a/docker-compose.ferretdb.yml b/docker-compose.ferretdb.yml new file mode 100644 index 0000000..405dc1a --- /dev/null +++ b/docker-compose.ferretdb.yml @@ -0,0 +1,22 @@ +services: + + mongo: + image: ghcr.io/ferretdb/ferretdb:1.20.1 + networks: + - fastnetmon-network + restart: unless-stopped + environment: + FERRETDB_HANDLER: sqlite + healthcheck: + disable: true + command: [ "--handler=sqlite", "--sqlite-url", "file:/var/lib/ferretdb/" ] + volumes: + - mongodb_data:/var/lib/ferretdb + + fastnetmon: + depends_on: + mongo: + condition: service_started + + environment: + FERRETDB_ENABLED: true diff --git a/services/fastnetmon/custom-entry.sh b/services/fastnetmon/custom-entry.sh index 47feb89..ac2022d 100755 --- a/services/fastnetmon/custom-entry.sh +++ b/services/fastnetmon/custom-entry.sh @@ -4,6 +4,16 @@ # Generate MongoDB config MONGO_HOST="${MONGO_HOST:-mongo}" MONGO_USERNAME="${MONGO_USERNAME:-administrator}" + +if [[ "${FERRETDB_ENABLED}" == "true" ]]; then +cat > /etc/fastnetmon/fastnetmon.conf < /etc/fastnetmon/fastnetmon.conf < /etc/fastnetmon/fastnetmon.conf <