? ?
docker git是什么,讓我們一起了解一下?
如果遇到了需要在Docker環(huán)境中操作GitLab倉庫的場(chǎng)景,需要事先在Docker中搭好Git環(huán)境。由于在Docker中對(duì)Git倉庫操作是全自動(dòng)化的,因此需要免密拉取倉庫和提交等操作。
git本身不追蹤目錄的變化,所以你創(chuàng)建一個(gè)空目錄,你會(huì)發(fā)現(xiàn)提交的變更里面并沒有這個(gè)你創(chuàng)建的空目錄,你要問了,如果不追蹤目錄變化,那為什么我改變了一個(gè)目錄的名字,而變更又會(huì)被包括進(jìn)去呢?那是因?yàn)槟氵@個(gè)目錄下存在文件,你改變了目錄的名字,相當(dāng)于改變了這個(gè)目錄下的文件的路徑,也就是說改變了文件,所以git要追蹤這個(gè)變化。
本地的代碼倉庫由工作區(qū),暫存區(qū)和本地分支組成:工作區(qū)就是你現(xiàn)在的路徑下的文件,而暫存區(qū)就是git自己緩存區(qū),把a(bǔ)dd放在這個(gè)區(qū)域中,最后就是本地分支,暫存區(qū)commit就是commit到本地分支了工作區(qū)<==>暫存區(qū)==>本地分支<==>遠(yuǎn)程倉庫分支。
那么如何在Docker安裝git?
1、拉取git鏡像
docker?pull?gitlab/gitlab-ce:latest
2、創(chuàng)建docker container (將宿主機(jī)SSH端口改為其他端口,讓出22端口)
docker?run?\ ????--publish?443:443?--publish?80:80?--publish?22:22?\ ????--name?gitlab?\ ????--volume?/usr/local/gitlab/config:/etc/gitlab?\ ????--volume?/usr/local/gitlab/logs:/var/log/gitlab?\ ????--volume?/usr/local/gitlab/data:/var/opt/gitlab?\ ????gitlab/gitlab-ce
把主機(jī)的 443、80、22 端口直接轉(zhuǎn)發(fā)到容器,同時(shí)利用 --volume /usr/local/gitlab/config:/etc/gitlab 、 --volume /usr/local/gitlab/logs:/var/log/gitlab 、 --volume /usr/local/gitlab/data:/var/opt/gitlab 這三個(gè)參數(shù)將 gitlab 的配置、數(shù)據(jù)和日志持久化到主機(jī)文件系統(tǒng)上來。
3、配置gitlab服務(wù)器的訪問地址
gitlab容器運(yùn)行起來是沒有問題的,但是當(dāng)gitlab上創(chuàng)建項(xiàng)目的時(shí)候,生成項(xiàng)目的URL訪問地址是容器的id。作為gitlab服務(wù)器,當(dāng)然是需要一個(gè)固定的URL訪問地址,于是需要配置gitlab.rb(宿主機(jī)上的路徑為:/usr/local/gitlab/config/gitlab.rb)配置文件里面的參數(shù)。
#?配置http協(xié)議所使用的訪問地址 external_url?'http://192.168.81.121'
然后重置:gitlab-ctl reconfigure,然后在重啟:gitlab-ctl restart。
以上就是小編的分享,希望可以幫助到大家。