Skip to content
Snippets Groups Projects
Commit 79306f1b authored by Manon Blanco's avatar Manon Blanco Committed by Yoann Schneider
Browse files

Publish a docker image in CI

parent 7209ccea
No related branches found
No related tags found
1 merge request!267Publish a docker image in CI
......@@ -52,6 +52,21 @@ test:
script:
- tox -- -v
docker-build:
stage: build
image: docker:19.03.1
services:
- docker:dind
variables:
DOCKER_DRIVER: overlay2
DOCKER_HOST: tcp://docker:2375/
except:
- schedules
script:
- ci/build.sh
# Make sure docs still build correctly
.docs:
image: python:3.10
......
FROM nvidia/cuda:12.2.0-base-ubuntu22.04
# Install python and pip
RUN apt-get -y update && \
apt-get -y install python3 python3-pip && \
apt-get clean -y
WORKDIR /src
# Install DAN as a package
COPY dan dan
COPY teklia_line_image_extractor teklia_line_image_extractor
COPY requirements.txt *-requirements.txt setup.py VERSION README.md ./
RUN pip install . --no-cache-dir
......@@ -2,3 +2,4 @@ include requirements.txt
include doc-requirements.txt
include mlflow-requirements.txt
include VERSION
include README.md
#!/bin/sh -e
# Build the tasks Docker image.
# Requires CI_PROJECT_DIR and CI_REGISTRY_IMAGE to be set.
# VERSION defaults to latest.
# Will automatically login to a registry if CI_REGISTRY, CI_REGISTRY_USER and CI_REGISTRY_PASSWORD are set.
# Will only push an image if $CI_REGISTRY is set.
if [ -z "$VERSION" ]; then
VERSION=${CI_COMMIT_TAG:-latest}
fi
if [ -z "$VERSION" -o -z "$CI_PROJECT_DIR" -o -z "$CI_REGISTRY_IMAGE" ]; then
echo Missing environment variables
exit 1
fi
IMAGE_TAG="$CI_REGISTRY_IMAGE:$VERSION"
cd $CI_PROJECT_DIR
docker build -f Dockerfile . -t "$IMAGE_TAG"
# Publish the image on the main branch or on a tag
if [ "$CI_COMMIT_REF_NAME" = "main" -o -n "$CI_COMMIT_TAG" ]; then
if [ -n "$CI_REGISTRY" -a -n "$CI_REGISTRY_USER" -a -n "$CI_REGISTRY_PASSWORD" ]; then
echo $CI_REGISTRY_PASSWORD | docker login -u $CI_REGISTRY_USER --password-stdin $CI_REGISTRY
docker push $IMAGE_TAG
else
echo "Missing environment variables to log in to the container registry…"
fi
else
echo "The build was not published to the repository registry (only for main branch or tags)…"
fi
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment