diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 2887f5e3..faf23608 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -24,35 +24,3 @@ jobs: bin: diode-send,diode-receive,diode-send-file,diode-receive-file archive: lidi-$tag token: ${{ secrets.GITHUB_TOKEN }} - build-and-push-docker-image: - name: Builds and pushes a tagged docker image - runs-on: ubuntu-latest - strategy: - matrix: - lidi_service: - - send - - receive - steps: - - uses: actions/checkout@v4 - - uses: docker/login-action@v3 - with: - registry: docker.io - username: ${{ secrets.DOCKERHUB_USERNAME }} - password: ${{ secrets.DOCKERHUB_TOKEN }} - - uses: docker/metadata-action@v5 - id: docker_meta - with: - images: docker.io/anssi/lidi-${{ matrix.lidi_service }} - tags: | - type=semver,pattern={{version}} - type=semver,pattern={{major}}.{{minor}} - type=semver,pattern={{major}} - - uses: docker/build-push-action@v5 - with: - context: . - push: true - target: ${{ matrix.lidi_service }} - tags: ${{ steps.docker_meta.outputs.tags }} - labels: ${{ steps.docker_meta.outputs.labels }} - - diff --git a/Dockerfile b/Dockerfile deleted file mode 100644 index 43edbe48..00000000 --- a/Dockerfile +++ /dev/null @@ -1,19 +0,0 @@ -# NOTE: use Google's "distroless with libgcc1" base image, see: -# https://github.com/GoogleContainerTools/distroless/blob/6755e21ccd99ddead6edc8106ba03888cbeed41a/cc/README.md -ARG BASE_IMAGE_FINAL_STAGES="gcr.io/distroless/cc:nonroot" - -FROM rust:1-bookworm AS builder - -WORKDIR /usr/src/lidi -COPY . . -RUN cargo install --path . - -FROM ${BASE_IMAGE_FINAL_STAGES} AS send - -COPY --from=builder --chown=root:root --chmod=755 /usr/local/cargo/bin/diode-send /usr/local/bin/ -ENTRYPOINT ["diode-send"] - -FROM ${BASE_IMAGE_FINAL_STAGES} AS receive - -COPY --from=builder --chown=root:root --chmod=755 /usr/local/cargo/bin/diode-receive /usr/local/bin/ -ENTRYPOINT ["diode-receive"] \ No newline at end of file diff --git a/Dockerfile.receive b/Dockerfile.receive new file mode 100644 index 00000000..2e056559 --- /dev/null +++ b/Dockerfile.receive @@ -0,0 +1,8 @@ +FROM rust:latest AS builder +WORKDIR /usr/src/lidi +COPY . . +RUN cargo install --path . + +FROM debian:buster-slim +COPY --from=builder /usr/local/cargo/bin/diode-receive /usr/local/bin +ENTRYPOINT ["diode-receive"] diff --git a/Dockerfile.send b/Dockerfile.send new file mode 100644 index 00000000..41c4e250 --- /dev/null +++ b/Dockerfile.send @@ -0,0 +1,8 @@ +FROM rust:latest AS builder +WORKDIR /usr/src/lidi +COPY . . +RUN cargo install --path . + +FROM debian:buster-slim +COPY --from=builder /usr/local/cargo/bin/diode-send /usr/local/bin +ENTRYPOINT ["diode-send"] diff --git a/docker-compose.yml b/docker-compose.yml index 7ad81f43..8c60252a 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -13,8 +13,7 @@ services: image: diode:send build: context: . - dockerfile: Dockerfile - target: send + dockerfile: Dockerfile.send networks: diode_net: ipv4_address: 172.16.0.2 @@ -32,8 +31,7 @@ services: image: diode:receive build: context: . - dockerfile: Dockerfile - target: receive + dockerfile: Dockerfile.receive networks: diode_net: ipv4_address: 172.16.0.3