From 3cf6e5cabad8cabd4166c5c52918882cb7ccb1d3 Mon Sep 17 00:00:00 2001 From: Matthew Baggett Date: Fri, 19 Apr 2024 00:28:13 +0200 Subject: [PATCH] add minio and mongodb dev containers --- .github/workflows/minio.yml | 48 +++++++++++++++++++++++++++++++++++ .github/workflows/mongodb.yml | 48 +++++++++++++++++++++++++++++++++++ minio/Dockerfile | 4 +++ minio/docker-compose.yml | 4 +++ mongodb/Dockerfile | 3 +++ mongodb/docker-compose.yml | 4 +++ 6 files changed, 111 insertions(+) create mode 100644 .github/workflows/minio.yml create mode 100644 .github/workflows/mongodb.yml create mode 100644 minio/Dockerfile create mode 100644 minio/docker-compose.yml create mode 100644 mongodb/Dockerfile create mode 100644 mongodb/docker-compose.yml diff --git a/.github/workflows/minio.yml b/.github/workflows/minio.yml new file mode 100644 index 0000000..b9abb47 --- /dev/null +++ b/.github/workflows/minio.yml @@ -0,0 +1,48 @@ +name: Minio + +permissions: + contents: read + packages: write + +on: + workflow_call: + workflow_dispatch: + +jobs: + minio-build: + name: "Build" + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + with: + sparse-checkout: minio + + - uses: docker/setup-qemu-action@v3 + + - uses: docker/setup-buildx-action@v2 + + - name: "Setup: Login to Docker Hub" + uses: docker/login-action@v3 + with: + username: matthewbaggett + password: ${{ secrets.DOCKER_HUB_PASSWORD }} + + - name: "Setup: Login to GHCR" + uses: docker/login-action@v3 + with: + registry: ghcr.io + username: matthewbaggett + password: ${{ secrets.GHCR_PASSWORD }} + + - uses: docker/build-push-action@v5 + name: Build & Push + with: + context: minio + platforms: linux/amd64,linux/arm64 + pull: true + push: true + tags: | + gone/minio + benzine/minio + ghcr.io/benzine-framework/minio diff --git a/.github/workflows/mongodb.yml b/.github/workflows/mongodb.yml new file mode 100644 index 0000000..6073872 --- /dev/null +++ b/.github/workflows/mongodb.yml @@ -0,0 +1,48 @@ +name: Minio + +permissions: + contents: read + packages: write + +on: + workflow_call: + workflow_dispatch: + +jobs: + mongodb-build: + name: "Build" + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + with: + sparse-checkout: mongodb + + - uses: docker/setup-qemu-action@v3 + + - uses: docker/setup-buildx-action@v2 + + - name: "Setup: Login to Docker Hub" + uses: docker/login-action@v3 + with: + username: matthewbaggett + password: ${{ secrets.DOCKER_HUB_PASSWORD }} + + - name: "Setup: Login to GHCR" + uses: docker/login-action@v3 + with: + registry: ghcr.io + username: matthewbaggett + password: ${{ secrets.GHCR_PASSWORD }} + + - uses: docker/build-push-action@v5 + name: Build & Push + with: + context: mongodb + platforms: linux/amd64,linux/arm64 + pull: true + push: true + tags: | + gone/mongodb + benzine/mongodb + ghcr.io/benzine-framework/mongodb diff --git a/minio/Dockerfile b/minio/Dockerfile new file mode 100644 index 0000000..ef5a286 --- /dev/null +++ b/minio/Dockerfile @@ -0,0 +1,4 @@ +FROM minio/minio +HEALTHCHECK --interval=5s --timeout=3s --start-period=0s --retries=5 \ + CMD mc ping local -c 1 -q +CMD ["server", "--console-address", ":9001", "/data"] diff --git a/minio/docker-compose.yml b/minio/docker-compose.yml new file mode 100644 index 0000000..9862c46 --- /dev/null +++ b/minio/docker-compose.yml @@ -0,0 +1,4 @@ +version: "3.7" +services: + minio: + build: . diff --git a/mongodb/Dockerfile b/mongodb/Dockerfile new file mode 100644 index 0000000..2f73f01 --- /dev/null +++ b/mongodb/Dockerfile @@ -0,0 +1,3 @@ +FROM mongo:7.0 +HEALTHCHECK --interval=5s --timeout=3s --start-period=0s --retries=5 \ + CMD echo 'db.stats().ok' | mongosh --norc --quiet --host=localhost:27017 diff --git a/mongodb/docker-compose.yml b/mongodb/docker-compose.yml new file mode 100644 index 0000000..38fdf0a --- /dev/null +++ b/mongodb/docker-compose.yml @@ -0,0 +1,4 @@ +version: "3.7" +services: + mongodb: + build: .