Fork me on GitHub

Herr Knedel/Velike stvari z zabojniki: Netbox na Synology - Diskstation

Created Sun, 25 Apr 2021 09:28:11 +0100 Modified Sun, 03 Apr 2022 06:46:23 +0000 Stopnja težavnosti: Morda bo trajalo malo dlje

347 Words

NetBox je brezplačna programska oprema za upravljanje računalniškega omrežja. Danes bom pokazal, kako namestiti storitev Netbox v strežnik Synology DiskStation.

Korak 1: Pripravite Synology

Najprej je treba na napravi DiskStation aktivirati prijavo SSH. To storite tako, da greste v “Nadzorna plošča” > “Terminal”.

Nato se lahko prijavite prek SSH, določenih vrat in skrbniškega gesla (uporabniki Windows uporabljajo Putty ali WinSCP). Prijavim se prek terminala, winSCP ali Puttyja in pustim to konzolo odprto za pozneje.

Korak 2: Ustvarite mapo NETBOX

V imeniku programa Docker ustvarim nov imenik z imenom “netbox”.

Zdaj je treba prenesti in razpakirati naslednjo datoteko v imeniku: https://github.com/netbox-community/netbox-docker/archive/refs/heads/release.zip. Za to uporabljam konzolo:
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

Nato uredim datoteko “docker/docker-compose.yml” in vnesem svoje naslove Synology v “netbox-media-files”, “netbox-postgres-data” in “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


Zelo pomembno je, da je dedovanje “«: *netbox” se nadomesti in vnese se vrata za “netbox”. Nato lahko zaženem datoteko Compose:

x
+
Terminal

$ sudo docker-compose up

Ustvarjanje podatkovne zbirke lahko traja nekaj časa. Obnašanje lahko opazujete v podrobnostih o vsebniku. Strežnik netboxa pokličem z naslovom IP Synology in vratom za zabojnik.