Linux - instalace Gitlab CE do Ubuntu a do Docker kontejneru

Linux - instalace Gitlab CE do Ubuntu a do Docker kontejneru

V tomto článku naleznete stručný návod jak nainstalovat Gitlab CE do Ubuntu přes apt a také do Docker kontejneru.


Instalace

 

Instalace Gitlab CE do Ubuntu

sudo apt install ca-certificates tzdata;sudo apt update;sudo apt install lsb-release debian-archive-keyring  apt-transport-https software-properties-common;gpg_key_url="https://packages.gitlab.com/gitlab/gitlab-ce/gpgkey";curl -fsSL $gpg_key_url| sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/gitlab.gpg

sudo tee /etc/apt/sources.list.d/gitlab_gitlab-ce.list<<EOF
deb https://packages.gitlab.com/gitlab/gitlab-ce/ubuntu/ focal main
deb-src https://packages.gitlab.com/gitlab/gitlab-ce/ubuntu/ focal main
EOF

sudo apt update;sudo apt install gitlab-ce

 

Instalace Gitlab CE do Docker kontejneru

export GITLAB_HOME=/srv/gitlab;sudo docker run --detach   --hostname gitlab.dnservis.cz   --publish 444:443 --publish 8080:80 --publish 222:22   --name gitlab   --restart always   --volume $GITLAB_HOME/config:/etc/gitlab   --volume $GITLAB_HOME/logs:/var/log/gitlab   --volume $GITLAB_HOME/data:/var/opt/gitlab   --shm-size 256m   gitlab/gitlab-ce:latest



docker start gitlab
------------
Docker bude dostupný na adrese http://localhost:8080



Vygenerujeme heslo pro root
------------
sudo docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password




Dodatek


Stav Gitlab služby
------------
gitlab-ctl status


Git - jak push na server přes ssh a ne přes https
------------
Do svých user prefs nahrát SSH key
Upravit v lokálním projektu git/config
z url = http://192.168.74.221/hanz/repo.git
na git@192.168.74.221:hanz/repo.git
pak už jen dát push git push origin main



Možné problémy


Web rozhraní Gitlab se nezobrazí
------------
Podíváme se do logů:
tail /var/log/gitlab/nginx/current

2023-02-27_19:38:46.65708 2023/02/27 20:38:45 [emerg] 4312#0: bind() to 0.0.0.0:80 failed (98: Address already in use)
2023-02-27_19:38:47.15728 2023/02/27 20:38:45 [emerg] 4312#0: bind() to 0.0.0.0:80 failed (98: Address already in use)
2023-02-27_19:38:47.65791 2023/02/27 20:38:45 [emerg] 4312#0: still could not bind()

Dle logu je zde problém s bindem na port 80 - konflikt s běžícím webserverem.
Upravíme tedy aby Gitlab používal jiný port např. 8050.
vim /etc/gitlab/gitlab.rb
external_url 'http://192.168.74.112:8050'

gitlab-ctl reconfigure
A problém je vyřešen


Heslo pro uživatele root nefunguje
------------
Vygenerujeme nové heslo
gitlab-rake "gitlab:password:reset[root]"


Přihlášení na ssh u docker kontejneru nejde
------------
ssh git@localhost -p 222
git@localhost: Permission denied (publickey).

Ve web rozhraní je třeba přidat uživateli root veřejný klíč.
Pak se přihlášení povede:
ssh git@localhost -p 222
PTY allocation request failed on channel 0
Welcome to GitLab, @root!
Connection to localhost closed.













Jak se ti článek líbil?

Komentáře (0)

Přidat komentář