tweak docker files

pull/815/head
Laura Batalha 2025-05-04 15:20:07 +01:00
rodzic a17d20bded
commit 7dfa6ee596
Nie znaleziono w bazie danych klucza dla tego podpisu
ID klucza GPG: FF87260D8C08DA64
4 zmienionych plików z 14 dodań i 12 usunięć

Wyświetl plik

@ -9,7 +9,7 @@ RUN pip install rns
FROM python:3.13-alpine
COPY --from=build /usr/local/bin/ /usr/local/bin/
COPY --from=build /usr/local/ /usr/local/
RUN mkdir /config

Wyświetl plik

@ -11,7 +11,7 @@ RUN pip install /tmp/rns-*.whl
FROM python:3.13-alpine
COPY --from=build /usr/local/bin/ /usr/local/bin/
COPY --from=build /usr/local/ /usr/local/
RUN mkdir /config

Wyświetl plik

@ -4,11 +4,14 @@ 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](https://pypi.org/project/rns/)
As an end-user you can either:
### Building
- grab prebuilt docker images from the github container registry @ `ghcr.io/markqvist/reticulum:latest`
- use of the `Dockerfile` to create a simple docker image based on the latest `rns` package available at [PyPi](https://pypi.org/project/rns/)
To build the image:
### Building from `Dockerfile`
To build the image, choose one:
- Copy the `Dockerfile` to a directory and in that directory run:
- `docker build -t reticulum:latest .`
@ -24,6 +27,8 @@ You can run the container in various ways, a quick way to test would be interact
- 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`
Replace the image name to match either the one you built or pre-built github versions.
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
@ -40,9 +45,6 @@ You can also use the included example `docker-compose.yml` file to manage the co
## 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 .`
The file `Dockerfile.release` 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 artifacts generated by the `package` job in the build workflow.
There are image builds available for both releases and pushes to branches to facilitate quick testing.

Wyświetl plik

@ -1,7 +1,7 @@
services:
reticulum:
container_name: reticulum
image: reticulum:latest
image: ghcr.io/markqvist/reticulum:latest
restart: unless-stopped
# Mount the config directory on the host in the same location as the docker-compose.yml
# to allow data persistency