Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FIX : Docker Build on Production #282

Merged
merged 2 commits into from
Sep 30, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
81 changes: 81 additions & 0 deletions .github/workflows/docker_build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
name: Build Docker Images for backend

on:
push:
branches:
- master
paths:
- "backend/**"
- ".github/workflows/docker_build.yml"
pull_request:
branches:
- master
paths:
- "backend/**"
- ".github/workflows/docker_build.yml"

env:
REGISTRY: ghcr.io
IMAGE_NAME: ${{ github.repository }}

jobs:
build-and-push-api-image:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- uses: actions/checkout@v4

- name: Log in to the Container registry
uses: docker/login-action@v1
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Extract metadata (tags, labels) for API Docker
id: meta_api
uses: docker/metadata-action@v3
with:
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}_api

- name: Build and push API Docker image
uses: docker/build-push-action@v3
with:
context: backend/
file: backend/Dockerfile_CPU
push: false
tags: ${{ steps.meta_api.outputs.tags }}
labels: ${{ steps.meta_api.outputs.labels }}

build-and-push-worker-image:
needs: build-and-push-api-image
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- uses: actions/checkout@v4

- name: Log in to the Container registry
uses: docker/login-action@v1
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Extract metadata (tags, labels) for Worker Docker
id: meta_worker
uses: docker/metadata-action@v3
with:
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}_worker

- name: Build and push Worker Docker image
uses: docker/build-push-action@v3
with:
context: backend/
file: backend/Dockerfile
push: false
tags: ${{ steps.meta_worker.outputs.tags }}
labels: ${{ steps.meta_worker.outputs.labels }}
8 changes: 4 additions & 4 deletions backend/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -17,17 +17,17 @@ RUN pip install --global-option=build_ext --global-option="-I/usr/include/gdal"
COPY docker/ramp/docker-requirements.txt /tmp/docker-requirements.txt
RUN pip install -r /tmp/docker-requirements.txt


RUN pip install --upgrade setuptools
# RUN pip install --upgrade pip
# RUN pip install --upgrade setuptools
COPY requirements.txt /tmp/requirements.txt
COPY api-requirements.txt /tmp/api-requirements.txt

RUN pip install -r /tmp/requirements.txt
RUN pip install --use-deprecated=legacy-resolver -r /tmp/requirements.txt


COPY docker/ramp/solaris /tmp/solaris
RUN pip install /tmp/solaris --use-feature=in-tree-build && \
pip install scikit-fmm --use-feature=in-tree-build

WORKDIR /app
COPY . /app
5 changes: 3 additions & 2 deletions backend/Dockerfile_CPU
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,12 @@ COPY docker/ramp/docker-requirements.txt /tmp/docker-requirements.txt
RUN pip install -r /tmp/docker-requirements.txt


RUN pip install --upgrade setuptools
# RUN pip install --upgrade setuptools

COPY requirements.txt /tmp/requirements.txt
COPY api-requirements.txt /tmp/api-requirements.txt
RUN pip install -r /tmp/requirements.txt
# Don't use legacy resolver , TODO : fix this dependencies
RUN pip install --use-deprecated=legacy-resolver -r /tmp/requirements.txt

COPY docker/ramp/solaris /tmp/solaris
RUN pip install /tmp/solaris --use-feature=in-tree-build && \
Expand Down
2 changes: 1 addition & 1 deletion backend/api-requirements.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
django==4.1.4
# gdal==3.6.2
psycopg2==2.9.9
psycopg2
djangorestframework==3.14.0
djangorestframework-gis==1.0
dj-database-url==1.2.0
Expand Down
Loading