Pre-requisite:
- AWS EC2 instance - in this case, I have RHEL9 as the base OS (could so work for CentOS)
- GitLab's runner token:
export RUNNER_TOKEN="your-runner-token"
- you can get it from your GitLab's project
Steps to set up the runner:
- Create a file:
touch set-up-runner.sh
(copy code below to set-up-runner.sh) - Then in the same path of your
set-up-runner.sh
, on your terminal, runset +x set-up-runner.sh
: this is to set execution permission for your script - Finally, run
./set-up-runner.sh
#!/bin/bash set -euxo pipefail #Download and install gitlab-runner curl -L "https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.rpm.sh" | sudo bash sudo yum install -y gitlab-runner #Add docker repository to RHEL sudo yum install -y yum-utils sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo yum makecache #Check for existing docker, podman before installing docker sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine \ podman \ runc #Install and enable docker sudo yum install -y docker-ce docker-ce-cli containerd.io sudo systemctl enable --now docker #Register gitlab runner sudo gitlab-runner register \ --non-interactive \ --url "https://gitlab.com/" \ --registration-token $RUNNER_TOKEN \ --description "gitlab-runner-ec2" \ --executor "docker" \ --docker-image alpine:latest \ --tag-list "container-builds" #Start service sudo gitlab-runner start sudo gitlab-runner verify
Top comments (0)