-
Notifications
You must be signed in to change notification settings - Fork 0
Building and CI
Alexander Zinchenko edited this page Jun 15, 2026
·
1 revision
git clone https://github.com/azinchen/ocserv-server.git
cd ocserv-server
docker build -t ocserv-server:local .The build compiles ocserv from source with Meson/Ninja and assembles the rootfs — see Architecture and Internals#multi-stage-build. No special build args are required; ocserv and dependency versions are pinned in the Dockerfile.
Run your locally built image by swapping the image name in your compose file for ocserv-server:local, or use the repo's root docker-compose.yml, which has build: ..
Images are published by GitHub Actions:
| Tag | Source | Registry |
|---|---|---|
:dev |
the main branch |
GHCR — ghcr.io/azinchen/ocserv-server:dev
|
:<branch> |
other branches (sanitized name) | GHCR |
:<version> and :latest
|
git release tags | GHCR and Docker Hub — azinchen/ocserv-server
|
So:
-
Latest development build:
ghcr.io/azinchen/ocserv-server:dev -
Latest release:
azinchen/ocserv-server:latest(or pin a specific:x.y.z)
Development builds (branches, main) are built for linux/amd64 for speed; release builds are multi-arch.
docker compose pull && docker compose up -d
# or
docker pull ghcr.io/azinchen/ocserv-server:dev-
Base image, apk package versions, and the ocserv version are bumped by a custom maintenance workflow (
maintenance-updates.yml) which opensbot/update-*branches. -
GitHub Actions are kept current by Dependabot (scoped to
github-actionsonly — Docker/base-image updates are handled by the maintenance workflow, not Dependabot).
Use the bundled config tester against any config before deploying:
docker run --rm -v ./volumes/config:/etc/ocserv:ro \
--entrypoint /usr/sbin/ocserv ghcr.io/azinchen/ocserv-server:dev \
-t -c /etc/ocserv/ocserv.confNext: Troubleshooting · FAQ
ocserv-server · MIT License · Built on ocserv + s6-overlay