diff --git a/.forgejo/workflows/ci.yaml b/.forgejo/workflows/ci.yaml new file mode 100644 index 0000000..d5cdbd1 --- /dev/null +++ b/.forgejo/workflows/ci.yaml @@ -0,0 +1,27 @@ +name: Build Container Image + +on: + push: + branches: + - 'main' + +jobs: + docker: + runs-on: ubuntu-latest + steps: + - name: Set up QEMU + uses: docker/setup-qemu-action@v3 + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + - name: Login to Docker Hub + uses: docker/login-action@v3 + with: + registry: ${{ secrets.REGISTRY_URL }} + username: ${{ secrets.REGISTRY_USERNAME }} + password: ${{ secrets.REGISTRY_PASSWORD }} + - name: Build and push + uses: docker/build-push-action@v5 + with: + push: true + tags: ${{ secrets.REGISTRY_URL }}/public/pe1chl-elproxy:latest + diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..bd6f474 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,10 @@ +FROM alpine:latest as build +RUN apk --no-cache add make gcc musl-dev linux-headers nettle-dev +WORKDIR /build +COPY . /build +RUN make + +FROM alpine:latest as runtime +RUN apk --no-cache add nettle +COPY --from=build /build/elproxy /app/elproxy +CMD [ "sh", "-c", "/app/elproxy $ELPROXY_CONFIG $ELPROXY_DEBUG" ] \ No newline at end of file diff --git a/README b/README index 3c8957a..665dafe 100644 --- a/README +++ b/README @@ -1,4 +1,4 @@ -Echolink Proxy/Relay server - PE1CHL +# Echolink Proxy/Relay server - PE1CHL This Echolink Proxy/Relay server can run multiple echolink proxies and/or relays on a single machine, provided it has multiple IPv4 addresses on the @@ -114,3 +114,11 @@ graph the statistiscs like number of used proxies. When this file disappears for no apparent reason, it probably is systemd doing it. Configure RemoveIPC=no in /etc/systemd/logind.conf to keep it at bay. + +# Docker image instructions - VK2BSD +To run this container, mount your configuration file, then set the following environment variables: +- `ELPROXY_CONFIG` to the path to your configuration file +- `ELPROXY_DEBUG` (optional) to a non-zero value to enable debug output logging +Make sure to set `Daemonize=0` in your configuration file, otherwise the container will simply exit. + +You can get a pre-built image by running `docker pull registry.yaakov.online/public/pe1chl-elproxy`.