This is a Docker compose file for the Unifi Network Application from LinuxServer.io. The Mongo database requires an initialization script which can be found here .
---
services:
unifi-db:
image: docker.io/mongo:8.0.8
container_name: unifi-db
environment:
- MONGO_INITDB_ROOT_USERNAME=root
- MONGO_INITDB_ROOT_PASSWORD=XXXXXXXXXX
- MONGO_USER=unifi
- MONGO_PASS=YYYYYYYYYY
- MONGO_DBNAME=unifi
- MONGO_AUTHSOURCE=admin
volumes:
- ~/data/unifi/mongo:/data/db
- ~/docker/unifi/init-mongo.sh:/docker-entrypoint-initdb.d/init-mongo.sh:ro
restart: unless-stopped
unifi-network-application:
image: lscr.io/linuxserver/unifi-network-application:9.0.114
container_name: unifi
environment:
- PUID=501
- PGID=20
- TZ=America/Boston
- MONGO_USER=unifi
- MONGO_PASS=YYYYYYYYYY
- MONGO_HOST=unifi-db
- MONGO_PORT=27017
- MONGO_DBNAME=unifi
- MONGO_AUTHSOURCE=admin
- MEM_LIMIT=1024 #optional
- MEM_STARTUP=1024 #optional
- MONGO_TLS= #optional
volumes:
- ~/data/unifi/data:/config
ports:
- 8443:8443
- 3478:3478/udp
- 10001:10001/udp
- 8080:8080
- 8843:8843 #optional
- 8880:8880 #optional
- 6789:6789 #optional
- 5514:5514/udp #optional
restart: unless-stopped
depends_on:
- unifi-db
Setup Docker on Linux with
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
To build and run the Docker container above, navigate to the directory where that file is saved. It must be called docker-compose.yml
. Then run
docker compose up -d