This guide uses Docker to run Oxidized for network configuration backups.
For Docker installation, see Docker.
Create a directory to store your configuration and compose files.
mkdir -p /opt/oxidized
cd /opt/oxidized
mkdir -p config
Create config/config:
---
username: readonly
password: your_password
model: junos
interval: 3600
use_syslog: false
debug: false
threads: 30
timeout: 20
retries: 3
prompt: !ruby/regexp /^([\w.@-]+[#>]\s?)$/
rest: 0.0.0.0:8888
next_adds_job: false
events:
hook_file: /root/.config/oxidized/hooks.rb
vars:
ssh:
secure: false
groups: {}
pid: "/root/.config/oxidized/pid"
input:
default: ssh, telnet
debug: false
ssh:
secure: false
output:
default: git
git:
user: Oxidized
email: oxidized@example.com
repo: "/root/.config/oxidized/oxidized.git"
source:
default: csv
csv:
file: "/root/.config/oxidized/router.db"
delimiter: !ruby/regexp /:/
map:
name: 0
model: 1
gpg: false
model_map:
cisco: ios
juniper: junos
services:
oxidized:
image: oxidized/oxidized:latest
container_name: oxidized
ports:
- "8888:8888"
volumes:
- ./config:/root/.config/oxidized
environment:
- OXIDIZED_DISABLE_RELOAD=false
restart: unless-stopped
Create config/router.db with your devices:
router1.example.com:ios:admin:password
switch1.example.com:ios:admin:password
firewall1.example.com:asa:admin:password
Start the container in the background.
docker compose up -d
Open http://your-server-ip:8888 in your browser.
oxidized/oxidized (not oxidized:latest)hostname:model:username:passwordAny questions?
Feel free to contact us. Find all contact information on our contact page.