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