2.4 KiB
unifi5
Docker container for Ubiquiti Unifi5 Controler
this Docker container based on Ubuntu Trusty runs a Ubiquiti Unifi5 Controler. The Controler is a java app on top of MongoDB
build
docker build -t tommi2day/unifi5 -f Dockerfile.unifi5 .
see also build_unifi.sh
exposed Ports
# WebUI Inform mongodb
EXPOSE 8443 8080 8880
Volumes
VOLUME /usr/lib/unifi/data #Unifi config and data dir
VOLUME /backups /logs #logs and backup
Environment variables used
None
Run
Specify the environment variable and a volume for the datafiles when launching a new container, e.g:
docker volume create --name unifi_data
docker run -d \
-v unifi_data:/usr/lib/unifi/data \
-v /shared/unifi5/backups:/backups \
-v /shared/unifi5/logs":/logs \
--hostname unifi5 \
--name unifi5 \
--restart=always \
-p 8080:8080 \
-p 8880:8880 \
-p 8443:8443 \
tommi2day/unifi5
see run_unifi.sh for an example
Addons
All Addons are in /usr/lib/unifi ####internal start/stop script unifi.sh is a start/stop/status script. the start script calls finally a tail -f server.log to keep the container running ####Backup script There is a cronjob in place calling backup_unifi.sh , which will trigger a logrotate for mongodb and afterwards stop the Controler to tar the unifi data tree to /backups and restart finally. You can start it manually as well.
docker exec -ti unifi5 bash
./backup_unifi.sh
exit
To return to the console prompt press CTRL-C
####Restore script for restoring a backup call/exec restore_unifi.sh [filename]. filename will be expected in /backups. Without filename the last backup unifi_data.$(date '+%Y%m%d').tar.gz is assumed as default. Sample for the running container:
docker exec -ti unifi5 bash
./restore_unifi.sh /backups/unifi-backup.tar.gz
exit
This will stop and restart the unifi process. To return to the console prompt press CTRL-C ####Systemd service definition unifi.service is a sample systemd start script for the already created container.
sudo cp unifi.service /etc/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable unifi.service
sudo systemctl start unifi.service
see https://help.ubnt.com/hc/en-us/articles/220066768-UniFi-Debian-Ubuntu-APT-howto