Repository navigation
Expand file tree
/
Copy pathContainerfile.j2
More file actions
52 lines (42 loc) · 1.67 KB
/
Copy pathContainerfile.j2
File metadata and controls
52 lines (42 loc) · 1.67 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
43
44
45
46
47
48
49
50
51
52
ARG BASE_VERSION=15
FROM ghcr.io/daemonless/base:${BASE_VERSION}
WORKDIR /app
ARG FREEBSD_ARCH=amd64
ARG UPSTREAM_URL="https://api.github.com/repos/bulwarkmail/webmail/releases/latest"
ARG UPSTREAM_JQ=".tag_name"
LABEL org.opencontainers.image.title="{{ title }}" \
org.opencontainers.image.description="{{ description }}" \
org.opencontainers.image.source="{{ upstream_url }}" \
org.opencontainers.image.url="{{ web_url }}" \
org.opencontainers.image.licenses="AGPL-3.0-only" \
org.opencontainers.image.vendor="daemonless" \
org.opencontainers.image.authors="daemonless" \
io.daemonless.category="{{ category }}" \
io.daemonless.port="{{ ports[0].port }}" \
io.daemonless.arch="${FREEBSD_ARCH}" \
io.daemonless.upstream-url="${UPSTREAM_URL}" \
io.daemonless.upstream-jq="${UPSTREAM_JQ}" \
io.daemonless.healthcheck-url="http://localhost:{{ ports[0].port }}/"
ENV NODE_ENV=production
ENV NEXT_TELEMETRY_DISABLED=1
ENV PORT=3000
ENV HOSTNAME=0.0.0.0
ENV HEALTHCHECK_URL="http://localhost:3000/"
ENV ADMIN_CONFIG_DIR=/config/admin
ENV ADMIN_STATE_DIR=/config/admin-state
ENV SETTINGS_DATA_DIR=/config/settings
ENV TELEMETRY_DATA_DIR=/config/telemetry
RUN pkg update && \
pkg install -y node24 ca_root_nss && \
pkg clean -ay && \
rm -rf /var/cache/pkg/* /var/db/pkg/repos/*
COPY bulwark-standalone/ ./
COPY bulwark-static/ ./.next/static
COPY bulwark-public/ ./public
COPY version /app/version
COPY root/ /
RUN mkdir -p /config/admin /config/admin-state /config/settings /config/telemetry && \
chown -R bsd:bsd /config /app && \
chmod +x /etc/services.d/bulwark-webmail/run
EXPOSE {{ ports[0].port }}
VOLUME /config