Something went wrong. Try again.
Community maintained Docker config for the knot server
Something went wrong. Try again.
knot-docker Dockerfile
1.3 kB · 40 lines
Dockerfile
at main
1234567891011121314151617181920212223242526272829303132333435363738394041from golang:1.25-alpine as builderenv CGO_ENABLED=1
arg TAG='v1.16.1-alpha'
workdir /apprun apk add git gcc musl-devrun git clone -b ${TAG} https://tangled.org/did:plc:j5hmlfdrwkvtxm7cjmu7j2is .run go build -o /usr/bin/knot -ldflags '-s -w -extldflags "-static"' ./cmd/knot
from alpine:latestenv KNOT_REPO_SCAN_PATH=/home/git/repositoriesexpose 5555expose 22
label org.opencontainers.image.title='knot'label org.opencontainers.image.description='data server for tangled'label org.opencontainers.image.source='https://tangled.org/did:plc:f5s5la5wlofsxidb3zemdune'label org.opencontainers.image.url='https://tangled.org'label org.opencontainers.image.vendor='tangled.org'label org.opencontainers.image.licenses='MIT'
arg UID=1000arg GID=1000
copy rootfs .run chmod 755 /etcrun chmod -R 755 /etc/s6-overlayrun apk add shadow s6-overlay execline openssl openssh git curl bashrun groupadd -g $GID -f gitrun useradd -u $UID -g $GID -d /home/git gitrun openssl rand -hex 16 | passwd --stdin gitrun mkdir -p /home/git/repositories && chown -R git:git /home/gitcopy --from=builder /usr/bin/knot /usr/binrun mkdir /app && chown -R git:git /app
healthcheck --interval=60s --timeout=30s --start-period=5s --retries=3 \ cmd curl -f http://localhost:5555 || exit 1
entrypoint ["/init"]