Fork me on GitHub

Herr Knedel/Μεγάλα πράγματα με δοχεία: Netbox σε Synology - Diskstation

Created Sun, 25 Apr 2021 09:28:11 +0100 Modified Sun, 03 Apr 2022 06:45:51 +0000 Schwierigkeitsgrad: Es kann etwas länger dauern

383 Words

Το NetBox είναι ένα δωρεάν λογισμικό που χρησιμοποιείται για τη διαχείριση δικτύων υπολογιστών. Σήμερα θα σας δείξω πώς να εγκαταστήσετε μια υπηρεσία Netbox στον Synology DiskStation.

Βήμα 1: Προετοιμάστε τη Synology

Πρώτον, η σύνδεση SSH πρέπει να ενεργοποιηθεί στον DiskStation. Για να το κάνετε αυτό, μεταβείτε στον “Πίνακα Ελέγχου” > “Τερματικό

Στη συνέχεια, μπορείτε να συνδεθείτε μέσω “SSH”, της καθορισμένης θύρας και του κωδικού πρόσβασης διαχειριστή (οι χρήστες των Windows χρησιμοποιούν το Putty ή το WinSCP). Συνδέομαι μέσω Terminal, winSCP ή Putty και αφήνω αυτή την κονσόλα ανοιχτή για αργότερα.

Βήμα 2: Δημιουργία φακέλου NETBOX

Δημιουργώ έναν νέο κατάλογο με όνομα “netbox” στον κατάλογο Docker.

Τώρα πρέπει να κατεβάσετε το ακόλουθο αρχείο και να το αποσυμπιέσετε στον κατάλογο: https://github.com/netbox-community/netbox-docker/archive/refs/heads/release.zip. Χρησιμοποιώ την κονσόλα γι' αυτό:
x
+
Terminal

$ 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

Στη συνέχεια, επεξεργάζομαι το αρχείο “docker/docker-compose.yml” και καταχωρώ τις διευθύνσεις Synology στα “netbox-media-files”, “netbox-postgres-data” και “netbox-redis-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


Είναι πολύ σημαντικό η κληρονομικότητα “«: *netbox” αντικαθίσταται και εισάγεται μια θύρα για το “netbox”. Μετά από αυτό μπορώ να ξεκινήσω το αρχείο Compose:

x
+
Terminal

$ sudo docker-compose up

Η δημιουργία της βάσης δεδομένων μπορεί να διαρκέσει λίγο χρόνο. Η συμπεριφορά μπορεί να παρατηρηθεί μέσω των λεπτομερειών του δοχείου. Καλώ τον διακομιστή netbox με τη διεύθυνση IP της Synology και τη θύρα του εμπορευματοκιβωτίου μου.