Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions .env.template
Original file line number Diff line number Diff line change
Expand Up @@ -4,17 +4,17 @@ FNM_WEB_API_V2=true
FNM_NOT_UPLOAD_ASN_MAPPING=false

COMPOSE_PROJECT_NAME=fnm
COMPOSE_FILE=docker-compose.yml:docker-compose.gobgp.yml:docker-compose.clickhouse.yml:docker-compose.grafana.yml:docker-compose.trafficdb.yml:docker-compose.web-api.yml
COMPOSE_FILE=docker-compose.yml:docker-compose.mongo.yml:docker-compose.gobgp.yml:docker-compose.clickhouse.yml:docker-compose.grafana.yml:docker-compose.trafficdb.yml:docker-compose.web-api.yml

# Minimal install
# COMPOSE_FILE=docker-compose.yml
# COMPOSE_FILE=docker-compose.yml:docker-compose.mongo.yml

# With visual stack - https://fastnetmon.com/docs-fnm-advanced/advanced-visual-traffic/
# COMPOSE_FILE=docker-compose.yml:docker-compose.clickhouse.yml:docker-compose.grafana.yml
# COMPOSE_FILE=docker-compose.yml:docker-compose.mongo.yml:docker-compose.clickhouse.yml:docker-compose.grafana.yml

# With persistend - https://fastnetmon.com/docs-fnm-advanced/fastnetmon-advanced-traffic-persistency/
# COMPOSE_FILE=docker-compose.yml:docker-compose.clickhouse.yml:docker-compose.trafficdb.yml
# COMPOSE_FILE=docker-compose.ymldocker-compose.mongo.yml::docker-compose.clickhouse.yml:docker-compose.trafficdb.yml

# Full install -
# COMPOSE_FILE=docker-compose.yml:docker-compose.gobgp.yml:docker-compose.clickhouse.yml:docker-compose.grafana.yml:docker-compose.trafficdb.yml:docker-compose.web-api.yml
# COMPOSE_FILE=docker-compose.yml:docker-compose.mongo.yml:docker-compose.gobgp.yml:docker-compose.clickhouse.yml:docker-compose.grafana.yml:docker-compose.trafficdb.yml:docker-compose.web-api.yml

4 changes: 2 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,10 @@ jobs:
matrix:
include:
- name: Minimal test
compose_file: docker-compose.yml
compose_file: docker-compose.yml:docker-compose.mongo.yml

- name: All comopose files test
compose_file: docker-compose.yml:docker-compose.gobgp.yml:docker-compose.clickhouse.yml:docker-compose.grafana.yml:docker-compose.trafficdb.yml:docker-compose.web-api.yml:docker-compose.gobgp.yml
compose_file: docker-compose.yml:docker-compose.mongo.yml:docker-compose.clickhouse.yml:docker-compose.grafana.yml:docker-compose.trafficdb.yml:docker-compose.web-api.yml:docker-compose.gobgp.yml
with:
runner: ${{ matrix.runner || 'ubuntu-24.04'}}
compose_file: ${{ matrix.compose_file }}
Expand Down
7 changes: 4 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,18 +28,19 @@ We set there variables
Minimal example

```bash
COMPOSE_FILE=docker-compose.ym
COMPOSE_FILE=docker-compose.yml:docker-compose.mongo.yml
```

Most full example

```bash
COMPOSE_FILE=docker-compose.yml:docker-compose.clickhouse.yml:docker-compose.grafana.yml:docker-compose.trafficdb.yml:docker-compose.web-api.yml:docker-compose.gobgp.yml
COMPOSE_FILE=docker-compose.yml:docker-compose.mongo.yml:docker-compose.clickhouse.yml:docker-compose.grafana.yml:docker-compose.trafficdb.yml:docker-compose.web-api.yml:docker-compose.gobgp.yml
```

Components by file

- docker-compose.yml - minimal base FNM (only FastNetMon and MongoDB)
- docker-compose.yml - only FastNetMon
- docker-compose.mongo.yml - MongoDB to run as DB with configuration for FastNetMon
- docker-compose.gobgp.yml - Add GoBGP daemon
- docker-compose.clickhouse.yml - Add clickhouse for saving metrics
- docker-compose.grafana.yml - Add grafana for [traffic visualisation](https://fastnetmon.com/docs-fnm-advanced/advanced-visual-traffic/)(need enabled clickhouse)
Expand Down
6 changes: 3 additions & 3 deletions docker-compose.ferretdb.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
services:

mongo:
ferretdb:
image: ghcr.io/ferretdb/ferretdb:1.20.1
networks:
- fastnetmon-network
Expand All @@ -15,8 +15,8 @@ services:

fastnetmon:
depends_on:
mongo:
ferretdb:
condition: service_started

environment:
FERRETDB_ENABLED: true
MONGO_HOST: ferretdb
25 changes: 25 additions & 0 deletions docker-compose.mongo.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
services:
mongo:
# https://hub.docker.com/_/mongo
image: mongo:8.3
networks:
- fastnetmon-network
restart: unless-stopped
volumes:
- mongodb_data:/data/db
secrets:
- mongo_password
environment:
MONGO_INITDB_ROOT_USERNAME: administrator
MONGO_INITDB_ROOT_PASSWORD_FILE: /run/secrets/mongo_password
healthcheck:
test: [ "CMD", "mongosh", "--eval", "db.adminCommand('ping')", "--quiet" ]
interval: 1m30s
timeout: 30s
retries: 5
start_period: 40s

fastnetmon:
depends_on:
mongo:
condition: service_healthy
22 changes: 0 additions & 22 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,25 +4,6 @@ include:
- secrets.yml

services:
mongo:
# https://hub.docker.com/_/mongo
image: mongo:8.2
networks:
- fastnetmon-network
restart: unless-stopped
volumes:
- mongodb_data:/data/db
secrets:
- mongo_password
environment:
MONGO_INITDB_ROOT_USERNAME: administrator
MONGO_INITDB_ROOT_PASSWORD_FILE: /run/secrets/mongo_password
healthcheck:
test: [ "CMD", "mongosh", "--eval", "db.adminCommand('ping')", "--quiet" ]
interval: 1m30s
timeout: 30s
retries: 5
start_period: 40s

fastnetmon:
image: fastnetmon/fastnetmon-advanced:${FNM_VERSION:-latest}
Expand All @@ -35,9 +16,6 @@ services:
cap_add:
- NET_ADMIN
- CAP_IPC_LOCK
depends_on:
mongo:
condition: service_healthy
environment:
MONGO_USERNAME: administrator
MONGO_HOST: mongo
Expand Down