diff --git a/install/docker-ci/README.md b/install/docker-ci/README.md index 45a50fde4de8707fc43680ac3a31efc72b076680..cb043c1b0d066551537af837a6b7d267a601cc36 100644 --- a/install/docker-ci/README.md +++ b/install/docker-ci/README.md @@ -8,41 +8,54 @@ This guide assumes you want to install a new CI machine from scratch, with 1. Install a base Debian 8.x distribution 2. Install the following packages: + ```sh $ apt-get update $ apt-get install openssh-server curl vim-nox htop ``` + 3. Make sure to copy access keys for personel at `/root/.ssh/authorized_keys` 4. Access your machine via ssh from this point onwards, make sure it is OK 5. Follow the steps in section "Kernel Support" below for extended CPU and memory control on docker containers, in case you need those 6. If there are locale problems, install the missing locales with: + ```sh $ dpkg-reconfigure locales ``` + 7. Install docker: + ```sh $ curl -sSL https://get.docker.com/ | sh ``` + 8. Install Gitlab CI: + ```sh $ curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-ci-multi-runner/script.deb.sh | bash ``` + 9. Add the `gitlab-runner` user to the docker group: + ```sh $ usermod -aG docker gitlab-runner ``` + 10. Register the runner and fine-tune its configuration: + ```sh $ gitlab-ci-multi-runner register $ vim /etc/gitlab-runner/config.toml $ service gitlab-runner restart ``` - If you'd like to user `docker build`, you'll need to register 2 runners: one - with the `docker` executor and another with a `shell` executor (that can - access `docker build`. More information here: - https://docs.gitlab.com/ce/ci/docker/using_docker_build.html + + If you'd like to user `docker build`, you'll need to register 2 runners: + one with the `docker` executor and another with a `shell` executor (that + can access `docker build`. More information here: + https://docs.gitlab.com/ce/ci/docker/using_docker_build.html 11. Configure docker to access Idiap's registry: + ```sh $ mkdir -p /etc/docker/certs.d/docker.idiap.ch $ scp ./docker.crt root@<machine>:/etc/docker/certs.d/docker.idiap.ch/