一、安裝Docker
在Ubuntu系統上,我們可以使用apt-get命令安裝Docker,具體操作如下:
sudo apt-get update
sudo apt-get install -y docker.io
為了避免每次使用Docker命令都需要sudo,可以將當前用戶加入docker組:
sudo usermod -aG docker $USER
再重新登錄一次即可。
二、拉取GitLab鏡像
執行下面的命令從Docker Hub上拉取GitLab CE鏡像:
docker pull gitlab/gitlab-ce:latest
三、創建GitLab容器
為了避免容器內部產生數據被刪除,我們需要將GitLab的數據目錄映射到宿主機的一個目錄中。這裡我們將GitLab數據存儲在宿主機的/home/gitlab-data目錄下。
執行下面的命令創建一個GitLab容器:
docker run -d \
-v /home/gitlab-data/config:/etc/gitlab \
-v /home/gitlab-data/logs:/var/log/gitlab \
-v /home/gitlab-data/data:/var/opt/gitlab \
-p 443:443 -p 80:80 -p 22:22 \
--name gitlab \
--restart always \
gitlab/gitlab-ce:latest
命令說明:
- -d:後台運行容器
- -v:將宿主機目錄掛載到容器內部
- -p:端口映射,將容器內部的443、80和22端口映射到宿主機的443、80和22端口上
- –name:指定容器名稱為gitlab
- –restart:容器重啟策略,這裡設置為always
- gitlab/gitlab-ce:latest:指定所使用的GitLab鏡像
容器啟動後,可以使用命令docker ps查看當前正在運行的容器:
docker ps
如果GitLab容器運行正常,則可以通過訪問宿主機的IP地址或者域名:http://your-ip/訪問GitLab。
四、使用GitLab
GitLab的管理員賬號默認為root,管理員賬號的密碼可以在容器中找到:
docker logs gitlab | grep 'Password:'
使用root賬號登錄後,即可創建項目、添加成員等操作。
五、使用Docker Compose
Docker Compose是一個用於定義和運行複雜應用程序的工具。我們可以使用Docker Compose來管理多個容器,比如同時啟動GitLab和MySQL容器。
下面是一個使用Docker Compose搭建GitLab的例子:
version: '3'
services:
gitlab:
image: gitlab/gitlab-ce:latest
restart: always
hostname: gitlab.example.com
environment:
GITLAB_OMNIBUS_CONFIG: |
external_url 'http://gitlab.example.com'
ports:
- "80:80"
- "443:443"
- "2222:22"
volumes:
- /srv/gitlab/config:/etc/gitlab
- /srv/gitlab/logs:/var/log/gitlab
- /srv/gitlab/data:/var/opt/gitlab
再執行下面的命令即可啟動GitLab容器:
docker-compose up -d
此時,GitLab將會運行在本地的80、443和2222端口上,即可在瀏覽器中訪問。
六、注意事項
在使用Docker搭建GitLab時,有一些需要注意的地方:
- 建議使用官方提供的鏡像,保證容器的穩定性和安全性;
- 為了不丟失GitLab中的數據,需要將GitLab的數據目錄映射到宿主機的一個目錄中;
- 通過環境變量來配置GitLab的一些參數;
- 在使用Docker Compose時,需要配置正確的網絡連接,避免多個容器之間無法通信。
原創文章,作者:SJDVF,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/332557.html