add dockerfile and build action for docs
All checks were successful
Build Antora Docs / build (push) Successful in 31s

This commit is contained in:
Tobias Brunner 2025-03-10 15:54:35 +01:00
parent 53b7ee2a54
commit 4ee40cdcc1
No known key found for this signature in database
2 changed files with 52 additions and 0 deletions

View file

@ -0,0 +1,38 @@
name: Build Antora Docs
on:
push:
branches: [main]
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-latest
container: catthehacker/ubuntu:act-latest
permissions:
contents: read
packages: write
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Log in to Container Registry
uses: docker/login-action@v3
with:
registry: ${{ vars.CONTAINER_REGISTRY }}
username: ${{ secrets.CONTAINER_REGISTRY_USERNAME }}
password: ${{ secrets.CONTAINER_REGISTRY_TOKEN }}
- name: Build and push Docker image
uses: docker/build-push-action@v5
with:
context: .
file: docs/Dockerfile
push: true
tags: ${{ vars.CONTAINER_REGISTRY }}/${{ vars.CONTAINER_IMAGE_NAME_DOCS }}:latest
cache-from: type=gha
cache-to: type=gha,mode=max

14
docs/Dockerfile Normal file
View file

@ -0,0 +1,14 @@
# ---------- STEP 1 ----------
# Build the documentation in web format
FROM ghcr.io/vshn/antora:master AS antora
WORKDIR /build
COPY . /build
RUN make docs-html antora_cmd=antora antora_opts=--fetch
# ---------- STEP 2 ----------
# Docker image only containing nginx and the freshly built documentation
FROM ghcr.io/vshn/nginx:latest
# Finally, copy the contents of the documentation to be served
COPY --from=antora /build/_public /usr/share/nginx/html