giiibates/unifi-os-server

By giiibates

Updated 9 days ago

(Un)official UniFi OS Server Docker image from the official Ubiquiti installer, with systemd.

Image
Networking
Security
Operating systems
0

6.2K

giiibates/unifi-os-server repository overview

UniFi Logo

UniFi OS Server for Docker Compose


Run UniFi OS Server in a Docker container with persistent storage, systemd support, and multi-architecture images.

Latest Version Docker Build Check Updates Docker Pulls

Unofficial Docker image for running UniFi OS Server with Docker Compose.
Built from the official UniFi OS Server software distributed by Ubiquiti — the internal uosserver image is extracted from the official installer and wrapped into a Docker runtime image.


Tags

Available tags and supported platforms
TagDescription
latestLatest published multi-architecture image
<version>Versioned multi-architecture image (e.g. 5.1.15)

Supported platforms:

  • linux/amd64
  • linux/arm64

Architecture-specific tags (<version>-amd64, <version>-arm64) are used only as intermediate build artifacts and are removed from Docker Hub after the multi-arch manifest is created.

Quick Start

Create persistent data directories:

mkdir -p data/{persistent,var-log,data,srv,var-lib-unifi,var-lib-postgresql,var-lib-mongodb,etc-rabbitmq-ssl}

Example docker-compose.yaml:

services:
  unifi-os-server:
    image: giiibates/unifi-os-server:latest
    container_name: unifi-os-server
    restart: unless-stopped
    cgroup: host
    stop_signal: SIGRTMIN+3

    cap_add:
      - NET_RAW
      - NET_ADMIN

    environment:
      UOS_SYSTEM_IP: ${UOS_SYSTEM_IP:-}
      HARDWARE_PLATFORM: ${HARDWARE_PLATFORM:-}

    ports:
      - "11443:443"
      - "8080:8080"
      - "8443:8443"
      - "8444:8444"
      - "3478:3478/udp"
      - "10003:10003/udp"
      - "5514:5514/udp"
      - "5671:5671"
      - "5005:5005"
      - "6789:6789"
      - "8880:8880"
      - "8881:8881"
      - "8882:8882"
      - "9543:9543"
      - "11084:11084"

    tmpfs:
      - /run:exec
      - /run/lock
      - /tmp:exec
      - /var/lib/journal
      - /var/opt/unifi/tmp:size=64m

    volumes:
      - /sys/fs/cgroup:/sys/fs/cgroup:rw
      - ./data/persistent:/persistent
      - ./data/var-log:/var/log
      - ./data/data:/data
      - ./data/srv:/srv
      - ./data/var-lib-unifi:/var/lib/unifi
      - ./data/var-lib-postgresql:/var/lib/postgresql
      - ./data/var-lib-mongodb:/var/lib/mongodb
      - ./data/etc-rabbitmq-ssl:/etc/rabbitmq/ssl

Start:

docker compose up -d

Open:

https://<your-host>:11443

Note: The GUI uses a self-signed certificate. Accept the browser security warning on first access.

First boot: All services take 3–5 minutes to initialize. Monitor progress with docker logs -f unifi-os-server.

Important Environment Variables

UOS_SYSTEM_IP

Set this to the hostname or IP address that UniFi devices should use to reach the server. Required for device adoption.

environment:
  UOS_SYSTEM_IP: 192.168.1.10
HARDWARE_PLATFORM

Optional. Set to synology when running on Synology NAS hardware that is not automatically detected.

environment:
  HARDWARE_PLATFORM: synology

Ports

Full port reference
PortProtocolRequiredPurpose
443 / 11443TCPUniFi OS web interface
8080TCPDevice and application communication
3478UDPSTUN / device adoption
10003UDPDevice discovery
8443TCPUniFi Network Application GUI/API
8444TCPHotspot portal (SSL)
5514UDPRemote syslog
5671TCPAMQPS
5005TCPRTP
6789TCPMobile speed test
8880TCPHotspot portal redirect (HTTP)
8881TCPHotspot portal redirect
8882TCPHotspot portal redirect
9543TCPUniFi Identity Hub
11084TCPUniFi Site Supervisor

Updating

docker compose pull
docker compose up -d

Persistent data under ./data remains intact.

Troubleshooting

# Live container log (systemd journal forwarded to Docker log driver)
docker logs -f unifi-os-server

# Service startup status
docker exec -it unifi-os-server systemctl list-jobs

# Show all service states
docker exec -it unifi-os-server systemctl list-units --type=service

# Active network listeners
docker exec -it unifi-os-server ss -tulpn

# UniFi core service log
docker exec -it unifi-os-server journalctl -u unifi-core -f

# UniFi Network application log
docker exec -it unifi-os-server journalctl -u unifi -f

# PostgreSQL log
docker exec -it unifi-os-server journalctl -u postgresql -f

# RabbitMQ log
docker exec -it unifi-os-server journalctl -u rabbitmq-server -f

The systemd journal is forwarded directly to Docker's log driver. docker logs -f shows all service output without needing a TTY.

Security Notice

Trivy or other scanners may report HIGH or CRITICAL vulnerabilities.

This image contains official upstream UniFi OS Server components from Ubiquiti. Many vulnerabilities must be fixed by Ubiquiti in a future upstream release before they can be included here.

Disclaimer

This project is not affiliated with, endorsed by, or sponsored by Ubiquiti Inc.

UniFi and Ubiquiti are trademarks or registered trademarks of Ubiquiti Inc.

Tag summary

Content type

Image

Digest

sha256:311682f9e

Size

831.3 MB

Last updated

9 days ago

docker pull giiibates/unifi-os-server