NetBox este un software gratuit utilizat pentru gestionarea rețelelor de calculatoare. Astăzi vă voi arăta cum să instalați un serviciu Netbox pe Synology DiskStation.
Pasul 1: Pregătiți Synology
În primul rând, conectarea SSH trebuie să fie activată pe DiskStation. Pentru a face acest lucru, mergeți la “Control Panel” > “Terminal”.
Apoi vă puteți conecta prin “SSH”, portul specificat și parola de administrator (utilizatorii de Windows folosesc Putty sau WinSCP).
Mă conectez prin Terminal, winSCP sau Putty și las această consolă deschisă pentru mai târziu.
Pasul 2: Creați dosarul NETBOX
Creez un nou director numit “netbox” în directorul Docker.
Acum, următorul fișier trebuie descărcat și despachetat în directorul: https://github.com/netbox-community/netbox-docker/archive/refs/heads/release.zip. Eu folosesc consola pentru acest lucru:
$ cd /volume1/docker/netbox/
$ sudo wget https://github.com/netbox-community/netbox-docker/archive/refs/heads/release.zip
$ sudo /bin/7z x release.zip
$ cd netbox-docker-release
$ sudo mkdir netbox-media-files
$ sudo mkdir netbox-redis-data
$ sudo mkdir netbox-postgres-data
version: '3.4'
services:
netbox:
image: netboxcommunity/netbox:${VERSION-v3.1-1.6.0}
depends_on:
- postgres
- redis
- redis-cache
- netbox-worker
env_file: env/netbox.env
user: 'unit:root'
volumes:
- ./startup_scripts:/opt/netbox/startup_scripts:z,ro
- ./initializers:/opt/netbox/initializers:z,ro
- ./configuration:/etc/netbox/config:z,ro
- ./reports:/etc/netbox/reports:z,ro
- ./scripts:/etc/netbox/scripts:z,ro
- ./netbox-media-files:/opt/netbox/netbox/media:z
ports:
- "8097:8080"
netbox-worker:
image: netboxcommunity/netbox:${VERSION-v3.1-1.6.0}
env_file: env/netbox.env
user: 'unit:root'
depends_on:
- redis
- postgres
command:
- /opt/netbox/venv/bin/python
- /opt/netbox/netbox/manage.py
- rqworker
netbox-housekeeping:
image: netboxcommunity/netbox:${VERSION-v3.1-1.6.0}
env_file: env/netbox.env
user: 'unit:root'
depends_on:
- redis
- postgres
command:
- /opt/netbox/housekeeping.sh
# postgres
postgres:
image: postgres:14-alpine
env_file: env/postgres.env
volumes:
- ./netbox-postgres-data:/var/lib/postgresql/data
# redis
redis:
image: redis:6-alpine
command:
- sh
- -c # this is to evaluate the $REDIS_PASSWORD from the env
- redis-server --appendonly yes --requirepass $$REDIS_PASSWORD ## $$ because of docker-compose
env_file: env/redis.env
volumes:
- ./netbox-redis-data:/data
redis-cache:
image: redis:6-alpine
command:
- sh
- -c # this is to evaluate the $REDIS_PASSWORD from the env
- redis-server --requirepass $$REDIS_PASSWORD ## $$ because of docker-compose
env_file: env/redis-cache.env
Este foarte important ca moștenirea “«: *netbox” este înlocuit și se introduce un port pentru “netbox”. După aceea, pot să pornesc fișierul Compose:
$ sudo docker-compose up
Sun la serverul netbox cu adresa IP a Synology și portul containerului meu.