Tangled.sh Knot#
These are the config files for the Tangled knot hosted at knot.ionchy.ca, built using knot-docker. Detailed instructions on hosting a knot can be found at knot-hosting.
Docker installation#
These instructions assume a user www-data on the host for Docker to use.
- In
knot-dockerdirectory, create Docker image withdocker build -t knot:latest --build-arg TAG=master --build-arg UID=$(id -u www-data) --build-arg GID=$(id -u www-data) . - In this directory, create bind mount directories with
mkdir keys repositories server - Ensure
repositoriesandserverare owned bywww-datawithchown www-data:www-data repositories server - Edit
docker-compose.ymlwith appropriateKNOT_SERVER_HOSTNAMEandKNOT_SERVER_OWNER - Create Docker container with
docker-compose up -d - Knot is now ready for reverse proxy from
KNOT_SERVER_HOSTNAME:443to local port 5555 (knot verification will not work over HTTP port 80!)
Repository troubleshooting#
- SSH keys must be added to Tangled after the knot is created for it to pick them up.
Run
docker exec knot knot keysto verify the keys. - Git remote URLs must be of the form
ssh://git@KNOT_SERVER_HOSTNAME:2222/KNOT_SERVER_OWNER/REPOsince the container exposes port 2222 for Git. Remember to allow the port through your firewall.