- 搭建原因
兩個月前我搭建了公司的docker(無法自定義端口,),當初只想着把托管在GitHub的項目代碼放在公司的服務器上面,后來忙着修改人臉服務器代碼,忘記了,這個月由於領導提的需求比較多,還是托管回來比較方便。
所以重新進行搭建,由於百度上大部分文章寫的有一些問題,在此進行記錄。
這是搭建成功的,並且http克隆的端口也正常,如下圖
- 首先安裝docker(阿里雲自己有源,所以可以使用自帶的源安裝)
但是還是建議使用清華大學的源
https://mirror.tuna.tsinghua.edu.cn/
Ubuntu 用戶可以參考下面
- 如果你安裝過dockers,先刪除
sudo apt-get remove docker docker-engine docker.io
- 首先安裝依賴
sudo apt-get install apt-transport-https ca-certificates curl gnupg2 software-properties-common
- 信任 Docker 的 GPG 公鑰
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
- 對於 amd64 架構的計算機,添加軟件倉庫:
sudo add-apt-repository \ "deb [arch=amd64] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu \ $(lsb_release -cs) \ stable"
- 如果你是樹莓派或其它ARM架構計算機
echo "deb [arch=armhf] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu \ $(lsb_release -cs) stable" | \ sudo tee /etc/apt/sources.list.d/docker.list
- 最后執行
sudo apt-get update
sudo apt-get install docker-ce
- 這樣等待一會就安裝完成
- 拉取gitlab鏡像
這部分可按照自己的喜歡拉取最新的版本,或者中文版本
https://hub.docker.com/search?q=gitlab-ce-zh&type=image
由於twang2218/gitlab-ce-zh大佬暫時沒維護
所以使用了
https://hub.docker.com/r/fjcanyue/gitlab-ce-zh/tags?page=1&ordering=last_updated
這個版本
- 拉取鏡像
docker pull fjcanyue/gitlab-ce-zh:latest
- 建立映射文件夾
config data logs
- 運行鏡像
建議使用docker-compose
安裝:
sudo pip install docker-compose
創建一個docker-compose.yml文件放在您合適的位置
version: '2'
services:
gitlab:
image: 'fjcanyue/gitlab-ce-zh:latest'
restart: always
hostname: '192.168.1.1'# 192.168.1.1請改為您的ip地址或者域名
environment:
container_name: gitlab
TZ: 'Asia/Shanghai'
GITLAB_OMNIBUS_CONFIG: |
external_url 'http://192.168.1.1:9001/'# 192.168.1.1請改為您的ip地址或者域名
gitlab_rails['time_zone'] = 'Asia/Shanghai'
gitlab_rails['gitlab_shell_ssh_port'] = 2222
# 需要配置到 gitlab.rb 中的配置可以在這里配置,每個配置一行,注意縮進。
# 比如下面的電子郵件的配置:
# gitlab_rails['smtp_enable'] = true
# gitlab_rails['smtp_address'] = "smtp.exmail.qq.com"
# gitlab_rails['smtp_port'] = 465
# gitlab_rails['smtp_user_name'] = "xxxx@xx.com"
# gitlab_rails['smtp_password'] = "password"
# gitlab_rails['smtp_authentication'] = "login"
# gitlab_rails['smtp_enable_starttls_auto'] = true
# gitlab_rails['smtp_tls'] = true
# gitlab_rails['gitlab_email_from'] = 'xxxx@xx.com'
ports:
- '9001:9001'#就這個地方 請不要使用 81:80 80:80 xxxx:80 雖然可以訪問但是無法使用http克隆
- '5443:443'
- '2222:22'
volumes:
- '/home/docker/gitlab/config:/etc/gitlab' #前面的是您自己的地址 后面是映射的地址
- '/home/docker/gitlab/logs:/var/log/gitlab'
- '/home/docker/gitlab/data:/var/opt/gitlab'
- 運行docker-compose.yml
使用默認名字的docker-compose.yml
docker-compose up -d
非默認名字比如mydocker.yml
docker-compose -f mydocker.yml up -d
運行結束 稍等一會 打開地址 看到 已經成功啦。