You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Massive 3be5e60fdd First commit 3 years ago
..
Dockerfile First commit 3 years ago
README.md First commit 3 years ago
start.sh First commit 3 years ago

README.md

Lokinet inside Docker

Run Lokinet inside Docker without much hassle. Note that this image just downloads, compiles, and starts Lokinet. It has no practical purpose aside being a base on which other containers (like Caddy routed with Lokinet inside Docker) can be built.

Compiling

Attention: you don't need to do this! There's already a pre-built image on DockerHub. You might want to do compile the image by yourself only if the DockerHub one doesn't work on your architecture or you don't trust that image.

After cloning the repository and CD-ing in the correct folder, run:
sudo docker build . -t massiveboxe/lokinet

Running

In case you want to run this image, be aware that because of Docker quirks, you have to give the container the NET_ADMIN privilege, and share the TUN device. This probably doesn't work on Windows. sudo docker run --name lokinet --cap-add=NET_ADMIN --device=/dev/net/tun massiveboxe/lokinet:latest

You should see some startup logs when the container is starting.

Testing

  1. Use docker exec -it lokinet /bin/sh to start a shell inside the container
  2. Use apt-get install curl -y to install cURL
  3. Use curl http://probably.loki/echo.sh, it should give you your address.
  4. Use exit to leave the shell.

Troubleshooting

I get an error message saying "Illegal instruction (core dumped)"
Sorry, you'll have to compile the image by yourself instead of using the DockerHub one. Refer to the "Compiling" section of this README to know how.

I see an error message/warning in the Lokinet bootstrap, should I worry?

  • Generally, all warns (yellow) can be ignored. The only exception is if keep getting warns that contain [somethingsomething].loki has no first hop candidate after 1:30 mins of runtime. You should consider restarting your container.
  • If you get an error saying Cannot open /dev/net/tun: No such file or directory, make sure you have included --cap-add=NET_ADMIN --device=/dev/net/tun when running docker run. This error could also happen when trying to use this container in Windows, where I don't think there's a workaround other than getting a decent OS.

Support, Licensing, etc.

For support, licensing information, etcetera take a look at the main README.