-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathContainerfile.pkg.j2
More file actions
42 lines (35 loc) · 1.55 KB
/
Containerfile.pkg.j2
File metadata and controls
42 lines (35 loc) · 1.55 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
ARG BASE_VERSION=15
FROM ghcr.io/daemonless/base:${BASE_VERSION}
ARG FREEBSD_ARCH=amd64
ARG PKG_NAME="py311-zensical"
ARG PACKAGES="${PKG_NAME}"
LABEL org.opencontainers.image.title="Zensical" \
org.opencontainers.image.description="Zensical is a modern static site generator designed to simplify building and maintaining project documentation. It's built by the creators of Material for MkDocs and shares the same core design principles and philosophy - batteries included, easy to use, with powerful customization options." \
org.opencontainers.image.source="https://github.com/daemonless/zensical" \
org.opencontainers.image.url="https://zensical.org" \
org.opencontainers.image.licenses="MIT" \
org.opencontainers.image.vendor="daemonless" \
org.opencontainers.image.authors="daemonless" \
io.daemonless.category="Development" \
io.daemonless.port="8000" \
io.daemonless.arch="${FREEBSD_ARCH}" \
io.daemonless.pkg-source="pkg" \
io.daemonless.packages="${PACKAGES}" \
io.daemonless.pkg-name="${PKG_NAME}"
# Install zensical and scaffold a default project for first-run
RUN pkg update && \
pkg install -y ${PACKAGES} && \
mkdir -p /app && \
pkg query '%v' ${PKG_NAME} > /app/version && \
zensical new /app/default && \
pkg clean -ay && \
rm -rf /var/cache/pkg/* /var/db/pkg/repos/*
# Copy root filesystem
COPY root/ /
# Set permissions
RUN chmod +x /etc/services.d/zensical/run /healthz \
/etc/cont-init.d/10-zensical-init
# Expose
EXPOSE 8000
# Volumes
VOLUME /config