Proyecto

General

Perfil

Acciones

Rocky Linux

Instalación de Docker

Ref: https://docs.rockylinux.org/gemstones/docker/

El servidor no incluye docker instalado, se sigue la guía oficial de Rocky Linux.

  • Se añande el repo de docker:
    sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    
  • Se instala docker:
    sudo dnf -y install docker-ce docker-ce-cli containerd.io docker-compose-plugin
    
  • Se inicia el servidor servicio de systemd:
    sudo systemctl --now enable docker
    

Ref: https://hub.docker.com/r/gitlab/gitlab-ce
Ref: https://docs.gitlab.com/ee/install/docker.html

Nota: la guía oficial sugiere el uso de un MTA externo al docker image como Postfix o Sendmail.
Nota: Se instala Gitlab Community Edition

  • Se escoje la ruta /gitlab-data para config, logs, y data files
    sudo mkdir -p /gitlab-data
    
  • Se escoje la última imagen estable a la fecha de CE: 16.8.1-ce.0
  • Se escoje el método de instalación con Docker Compose
  • Se crea la ruta para docker compose:
    sudo mkdir -p /srv/gitlab
    
  • Se crea docker-compose.yml:

Es mandatorio desactivar Let's Encrypt

version: '3.6'
services:
  gitlab:
    image: gitlab/gitlab-ce:16.8.1-ce.0
    restart: always
    hostname: '$HOST_NAME'
    environment:
      GITLAB_OMNIBUS_CONFIG: |
        # Add any other gitlab.rb configuration here, each on its own line
        external_url 'https://$DOMAIN_NAME'
        letsencrypt['enable'] = false
        gitlab_sshd['enable'] = false
        gitlab_sshd['generate_host_keys'] = false
    ports:
      - '$HTTP_OUT:80'
      - '$HTTPS_OUT:443'
      - '$SSH_OUT:22'
    volumes:
      - '$GITLAB_HOME/config:/etc/gitlab:Z'
      - '$GITLAB_HOME/logs:/var/log/gitlab:Z'
      - '$GITLAB_HOME/data:/var/opt/gitlab:Z'
    shm_size: '256m'
  • El dominio asignado es repo.internal.amtc.cl

Ref: https://docs.docker.com/compose/environment-variables/set-environment-variables/

  • Se añade un archivo .env:
GITLAB_HOME=/gitlab-data
HOST_NAME=repo.internal.amtc.cl
DOMAIN_NAME=$HOST_NAME
IP_NUM=172.17.53.26
HTTP_OUT=${IP_NUM}:80
HTTPS_OUT=${IP_NUM}:443
SSH_OUT=${IP_NUM}:22
  • Se añade la dirección IP:
sudo ip addr add 172.17.53.26/24 dev eno1
  • Se va al directorio del docker-compose.yml:
sudo cd /srv/gitlab
  • Se levanta el contenedor:
sudo docker compose up -d
  • Opcionalmente se puede conectar a stdout (salir con CTRL+C):
sudo docker compose attach gitlab
  • Para bajar el contededor:
sudo docker compose down
  • Para listar los contenedores activos:
sudo docker compose ls

Actualizado por Tomas Villegas hace más de 1 año · 11 revisiones