Reticulum/docker
2025-05-04 00:31:16 +01:00
..
docker-compose.yml add docker instructions and examples 2025-05-03 19:18:32 +01:00
Dockerfile test docker builds for all pushes and prs 2025-05-04 00:31:16 +01:00
Dockerfile.release test docker builds for all pushes and prs 2025-05-04 00:31:16 +01:00
README.md add docker instructions and examples 2025-05-03 19:18:32 +01:00

Docker Images

Docker resources Reticulum service and tooling

End-user

As an end-user you can make use of the Dockerfile to create a simple docker image based on the latest rns package available in PyPi

Building

To build the image:

  • Copy the Dockerfile to a directory and in that directory run:

    • docker build -t reticulum:latest .
  • From the root of this repository run:

    • docker build -t reticulum:latest -f docker/Dockerfile .

Running

Docker Run

You can run the container in various ways, a quick way to test would be interactively:

  • Create a directory to hold the configuration and other files - mkdir config
  • Start the container - docker run --rm --name reticulum -v ./config:/config -it reticulum:latest

This will create a container named reticulum, mount the config directory to the directory you created above in your current working directory (./config) and automatically delete que container (--rm) when you detach from the session (files in the config directory will be retained)

You can edit the config file at ./config/config to configure rns as usual

Once the container is running, you can use other rns tools via docker exec:

docker exec -it reticulum rnpath

Docker Compose

You can also use the included example docker-compose.yml file to manage the container in a more automated way. It has some comments but if you are not familiar with it, it is probably a good idea to read the official docker compose docs

Developer

The file Dockerfile.dist is meant to be used for CI, its similar to the end-user Dockerfile except that it will grab and install wheel files from the /dist directory instead This could be used in this order:

  • make build_wheel
  • Build the container with Dockerfile.dist
    • Via github workflows
    • Manually docker build -t reticulum:latest -f docker/Dockerfile.dist .