From 7284f65f7c396ce2d963fa2d255aab70cd48aa66 Mon Sep 17 00:00:00 2001 From: Adar Nimrod <nimrod@shore.co.il> Date: Sat, 14 Nov 2020 22:17:28 +0200 Subject: [PATCH] Working deployment on host01.shore.co.il. Can be easily deployed on different hosts by setting different environment variables (need to document them). No testing/ linting of any kind (need to do that as well). --- .env | 3 +++ Dockerfile | 9 +++++++++ docker-compose.yml | 23 +++++++++++++++++++++++ entrypoint | 5 +++++ 4 files changed, 40 insertions(+) create mode 100644 .env create mode 100644 Dockerfile create mode 100644 docker-compose.yml create mode 100755 entrypoint diff --git a/.env b/.env new file mode 100644 index 0000000..612149e --- /dev/null +++ b/.env @@ -0,0 +1,3 @@ +COMPOSE_PROJECT_NAME=gitlab-runner +DOCKER_HOST=ssh://host01.shore.co.il +RUNNER_NAME=host01.shore.co.il diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..7ea9f97 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,9 @@ +FROM gitlab/gitlab-runner:alpine-v13.6.0-rc1 +RUN apk add --no-cache --update docker +COPY --chown=root:root entrypoint /entrypoint0 +ENV DOCKER_VOLUMES=/var/run/docker.sock:/var/run/docker.sock \ + RUNNER_EXECUTOR=docker \ + DOCKER_PULL_POLICY=if-not-present +ENTRYPOINT [ "/entrypoint0" ] +CMD [ "run", "--user=gitlab-runner", "--working-directory=/home/gitlab-runner" ] +HEALTHCHECK CMD gitlab-runner list 2>&1 | grep -qF "$CI_SERVER_URL" diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..3843269 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,23 @@ +--- +version: '3.7' +services: + runner: + build: + context: ./ + environment: + CI_SERVER_URL: "${CI_SERVER_URL:-https://git.shore.co.il}" + DOCKER_IMAGE: docker:19.03 + REGISTRATION_TOKEN: "${REGISTRATION_TOKEN}" + RUNNER_NAME: "${RUNNER_NAME}" + image: adarnimrod/gitlab-runner + restart: always + volumes: + - config:/etc/gitlab-runner + - /var/run/docker.sock:/var/run/docker.sock + +volumes: + config: + +networks: + default: + name: shore diff --git a/entrypoint b/entrypoint new file mode 100755 index 0000000..3e8616d --- /dev/null +++ b/entrypoint @@ -0,0 +1,5 @@ +#!/bin/sh +set -eux + +gitlab-runner register --non-interactive +eval exec /entrypoint "$@" -- GitLab