From ac3ee5f7090daf85080f1998f5f669c4ab796825 Mon Sep 17 00:00:00 2001 From: Adam Szkoda Date: Mon, 12 Dec 2022 12:58:24 +0100 Subject: [PATCH] Build container images for deployment Signed-off-by: Adam Szkoda --- .github/workflows/deploy.yml | 41 ++++++++++++++++++++++++++++++++++++ docker-compose.yml | 9 +++++++- radicle-httpd/Dockerfile | 2 +- radicle-node/Dockerfile | 2 +- 4 files changed, 51 insertions(+), 3 deletions(-) create mode 100644 .github/workflows/deploy.yml diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml new file mode 100644 index 00000000..717d2c09 --- /dev/null +++ b/.github/workflows/deploy.yml @@ -0,0 +1,41 @@ +name: Build and push container images + +on: + push: + branches: + - deploy/* + +jobs: + build-and-push-images: + runs-on: ubuntu-latest + steps: + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v1 + - name: Login to the container registry + uses: docker/login-action@v1 + with: + registry: gcr.io + username: _json_key + password: ${{ secrets.GCR_JSON_KEY }} + - name: Checkout code + uses: actions/checkout@v2 + - name: Build and push radicle-node + id: radicle-node + uses: docker/build-push-action@v2 + with: + context: . + file: radicle-node/Dockerfile + push: true + tags: gcr.io/radicle-services/radicle-node:latest,gcr.io/radicle-services/radicle-node:${{ github.sha }} + cache-from: type=registry,ref=gcr.io/radicle-services/radicle-node:latest + cache-to: type=inline + - name: Build and push radicle-httpd + id: radicle-httpd + uses: docker/build-push-action@v2 + with: + context: . + file: radicle-httpd/Dockerfile + push: true + tags: gcr.io/radicle-services/radicle-httpd:latest,gcr.io/radicle-services/radicle-httpd:${{ github.sha }} + cache-from: type=registry,ref=gcr.io/radicle-services/radicle-httpd:latest + cache-to: type=inline diff --git a/docker-compose.yml b/docker-compose.yml index d5e3dcd1..2016614f 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -7,6 +7,9 @@ services: context: . environment: RUST_LOG: debug + RAD_PASSPHRASE: seed + volumes: + - /var/opt/radicle:/root/.radicle init: true container_name: radicle-node restart: unless-stopped @@ -16,6 +19,8 @@ services: resources: limits: memory: 6gb + ports: + - 8776:8776 radicle-httpd: image: gcr.io/radicle-services/radicle-httpd:${RADICLE_IMAGE_TAG:-latest} build: @@ -23,6 +28,8 @@ services: context: . environment: RUST_LOG: debug + volumes: + - /var/opt/radicle:/root/.radicle init: true container_name: radicle-httpd restart: unless-stopped @@ -40,7 +47,7 @@ services: - | cat </etc/caddy/Caddyfile {$RADICLE_DOMAIN} { - reverse_proxy radicle-httpd:8778 + reverse_proxy radicle-httpd:8080 } EOF caddy run --config /etc/caddy/Caddyfile --adapter caddyfile diff --git a/radicle-httpd/Dockerfile b/radicle-httpd/Dockerfile index 73abe07c..e87728cb 100644 --- a/radicle-httpd/Dockerfile +++ b/radicle-httpd/Dockerfile @@ -18,4 +18,4 @@ COPY --from=build /workdir/target/x86_64-unknown-linux-musl/container/radicle-ht WORKDIR /app -ENTRYPOINT ["/usr/local/bin/radicle-httpd"] +ENTRYPOINT ["/usr/local/bin/radicle-httpd", "--listen", "0.0.0.0:8080"] diff --git a/radicle-node/Dockerfile b/radicle-node/Dockerfile index 1357f39d..ac3e058b 100644 --- a/radicle-node/Dockerfile +++ b/radicle-node/Dockerfile @@ -19,4 +19,4 @@ COPY --from=build /workdir/target/x86_64-unknown-linux-musl/container/radicle-no WORKDIR /app -ENTRYPOINT ["/usr/local/bin/radicle-node"] +ENTRYPOINT ["/usr/local/bin/radicle-node", "--listen", "0.0.0.0:8776"]