docker 安裝gitlab以及使用
一、安裝及配置
1.gitlab鏡像拉取
# gitlab-ce為穩(wěn)定版本,后面不填寫(xiě)版本則默認(rèn)pull最新latest版本
$ docker pull gitlab/gitlab-ce

2.運(yùn)行g(shù)itlab鏡像
$ docker run -d -p 443:443 -p 80:80 -p 222:22 --name gitlab --restart always -v /home/gitlab/config:/etc/gitlab -v /home/gitlab/logs:/var/log/gitlab -v /home/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce
# -d:后臺(tái)運(yùn)行
# -p:將容器內(nèi)部端口向外映射
# --name:命名容器名稱
# -v:將容器內(nèi)數(shù)據(jù)文件夾或者日志、配置等文件夾掛載到宿主機(jī)指定目錄
運(yùn)行成功后出現(xiàn)一串字符串

3.配置
按上面的方式,gitlab容器運(yùn)行沒(méi)問(wèn)題,但在gitlab上創(chuàng)建項(xiàng)目的時(shí)候,生成項(xiàng)目的URL訪問(wèn)地址是按容器的hostname來(lái)生成的,也就是容器的id。作為gitlab服務(wù)器,我們需要一個(gè)固定的URL訪問(wèn)地址,于是需要配置gitlab.rb(宿主機(jī)路徑:/home/gitlab/config/gitlab.rb)。
# gitlab.rb文件內(nèi)容默認(rèn)全是注釋
$ vim /home/gitlab/config/gitlab.rb
# 配置http協(xié)議所使用的訪問(wèn)地址,不加端口號(hào)默認(rèn)為80
external_url 'http://192.168.199.231'
# 配置ssh協(xié)議所使用的訪問(wèn)地址和端口
gitlab_rails['gitlab_ssh_host'] = '192.168.199.231'
gitlab_rails['gitlab_shell_ssh_port'] = 222 # 此端口是run時(shí)22端口映射的222端口
:wq #保存配置文件并退出

# 重啟gitlab容器
$ docker restart gitlab
此時(shí)項(xiàng)目的倉(cāng)庫(kù)地址就變了。如果ssh端口地址不是默認(rèn)的22,就會(huì)加上ssh:// 協(xié)議頭
打開(kāi)瀏覽器輸入ip地址(因?yàn)槲业膅itlab端口為80,所以瀏覽器url不用輸入端口號(hào),如果端口號(hào)不是80,則打開(kāi)為:ip:端口號(hào))
4.創(chuàng)建一個(gè)項(xiàng)目
第一次進(jìn)入要輸入新的root用戶密碼,設(shè)置好之后確定就行

下面我們就可以新建一個(gè)項(xiàng)目了,點(diǎn)擊Create a project

創(chuàng)建完成后:

二、用戶使用
1.下載git.exe
雙擊git.exe安裝git(一直點(diǎn)下一步,直到完成)
點(diǎn)擊電腦桌面空白地方右鍵看到如下兩行即安裝成功

2.登錄gitlab網(wǎng)頁(yè)
url:http://192.168.1.111
填寫(xiě)賬號(hào)密碼登錄

3.設(shè)置ssh
1.打開(kāi)本地git bash,使用如下命令生成ssh公鑰和私鑰對(duì)
$ ssh-keygen -t rsa -C 'xxx@xxx.com'
然后一路回車(chē)(-C 參數(shù)是你的郵箱地址)

2.然后輸入命令:
# ~表示用戶目錄,比如我的windows就是C:\Users\Administrator,并復(fù)制其中的內(nèi)容
$ cat ~/.ssh/id_rsa.pub

3.打開(kāi)gitlab,找到Profile Settings-->SSH Keys--->Add SSH Key,并把上一步中復(fù)制的內(nèi)容粘貼到Key所對(duì)應(yīng)的文本框


4.從gitlab克隆代碼
1.回到gitlab頁(yè)面點(diǎn)擊projects->your projects

2.選擇一個(gè)需要克隆的項(xiàng)目,進(jìn)入

3.點(diǎn)擊按鈕復(fù)制地址

4.新建一個(gè)文件夾,我在這里在我的電腦D盤(pán)下新建project文件夾

5.進(jìn)入projects文件夾右鍵選擇->Git Bash Here

6.設(shè)置用戶名和郵箱
$ git config --global user.name "你的名字"
$ git config --global user.email "你的郵箱"

7.克隆項(xiàng)目
$ git clone 項(xiàng)目地址

8.查看projects文件夾,項(xiàng)目已經(jīng)克隆下來(lái)了

5.提交代碼到gitlab
1.基于以上步驟,在克隆的項(xiàng)目文件夾下新增一個(gè)測(cè)試文件

2.查看同步狀態(tài)
在項(xiàng)目文件夾下右鍵點(diǎn)擊->Git Bash Here

輸入
$ git status

可以看到紅色部分有需要提交的文件
3.提交代碼
輸入
$ git add 測(cè)試提交的文件.txt
(“git add“后加“.”則添加全部文件,也可以加"*.txt"表示添加全部需要提交的txt文件 )

然后輸入以下命令提交并添加提交信息
$ git commit -m "message"

最后輸出以下命令提交到gitlab
$ git push origin master

提交完成啦
再回到gitlab上看該項(xiàng)目就可以看到多了一個(gè)txt測(cè)試文件