OSI:Netconf/Oxidized

Z HelpDesk

Sestavení a spuštění

  • nainstalovat docker a docker-compose
  • sestavit
cd /root/docker/oxidized
docker-compose build
  • spustit
docker-compose up -d

Automatické spouštění

  • Ve složce /root/docker/oxidized je celý projekt a proti tomu je spouštěn přes systemd service:
[Unit]
Description=%i service with docker compose
Requires=docker.service
After=docker.service
[Service]
Type=oneshot
RemainAfterExit=yes
WorkingDirectory=/root/docker/%i
ExecStart=/usr/bin/docker-compose up -d --remove-orphans
ExecStop=/usr/bin/docker-compose down
TimeoutStartSec=0
[Install]
WantedBy=multi-user.target
  • Samotný service je disabled - nespouští se po startu, ale je spuštěn timerem:
[Unit]
Description=Oxidized Timer
[Timer]
OnCalendar=*-*-* 3:00:00
[Install]
WantedBy=timers.target

Adresářová struktura

├── docker-compose.yml #orchestrace containerů
├── mailing_build #container pro pravidelné posílání emailů
│   ├── ansi2html.sh #skript pro převod mezi barevným textem z gitu do HTML
│   ├── Dockerfile #recept na sestavení containeru
│   ├── mailing-crontab #nastavení cronu
│   ├── mailing.sh #rozesílací skript
│   └── mail-template #základní data pro mail
└── oxidized_build #container obsahující oxidized
    ├── Dockerfile
    ├── email_alert.sh #skript pro rozesílání emailů, pokud dojde k selhání
    ├── mail-template
    ├── oxidized #repozitář oxidized
    │   ├── bin
    │   ├── CHANGELOG.md
    │   ├── Dockerfile
    │   ├── docs
    │   ├── extra
    │   ├── Gemfile
    │   ├── lib
    │   ├── LICENSE
    │   ├── oxidized.gemspec
    │   ├── Rakefile
    │   ├── README.md
    │   ├── spec
    │   └── TODO.md
    └── oxidized-web #repozitář oxidized-web
        ├── Gemfile
        ├── lib
        ├── oxidized-web.gemspec
        ├── Rakefile
        └── README.md