k

bram.gotink.be / knot

data server for tangled

0
v1.12.0-alpha MIT Source

Pull this image

docker pull buoy.cr/bram.gotink.be/knot:v1.11.0-alpha

knot

OCI Container to run your own tangled knot and host the data of your own repositories.

Pre-built Images

Pre-built images are available in an ATCR repository starting at v1.10.0-alpha.

docker pull atcr.io/bram.gotink.be/knot

This image differs from the pseudo-official tngl/knot image.
The code is the same, but the image is set up differently:

  • Run everything using a non-root user
  • Allow the OCI runtime to restart the container if anything fails, rather than package an entire init system that manages these programs

Building The Image

docker build --platform linux/amd64,linux/arm64 -t atcr.io/bram.gotink.be/knot --build-arg VERSION=v1.10.0-alpha .

Setting Up The Image

This image is designed to work with kubernetes.
It requires three volumeMounts:

  • /repositories for the repositories
  • /data for the database
  • /ssh-keys for the SSH host keys

The first two can be configured using KNOT_REPO_SCAN_PATH (default /repositories) and KNOT_SERVER_DB_PATH (default /data/knotserver.db).
The latter cannot be changed, and it must be a folder with strict permissions.

The container listens on two ports:

  • 5555 handles HTTP traffic and should be mapped onto port 443
  • 2222 handles SSH and should be mapped onto port 22