centos7使用docker部署gitlab-ce-zh應(yīng)用詳解
1.國(guó)內(nèi)拉取鏡像比較慢,所以這里采用DaoCloud源。
# curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://43049fd0.m.daocloud.io
2.拉取鏡像
# docker pull twang2218/gitlab-ce-zh
3.啟動(dòng)容器
docker run --detach \ --hostname git.xiaohuruwei.com \ --publish 8443:443 --publish 8080:80 --publish 2222:22 \ --name gitlab \ --restart always \ --volume /srv/gitlab/config:/etc/gitlab \ --volume /srv/gitlab/gitlab/logs:/var/log/gitlab \ --volume /srv/gitlab/gitlab/data:/var/opt/gitlab \ twang2218/gitlab-ce-zh:latest
4.命令參數(shù)解釋
--hostname 指定容器中綁定的域名,會(huì)在創(chuàng)建鏡像倉(cāng)庫(kù)的時(shí)候使用到,這里綁定git.xiaohuruwei.com --publish 端口映射,冒號(hào)前面是宿主機(jī)端口,后面是容器expose出的端口 --volume volume 映射,冒號(hào)前面是宿主機(jī)的一個(gè)文件路徑,后面是容器中的文件路徑
5.本地訪問地址
git.xiaohuruwei.com
注:首次打開時(shí),需要設(shè)置用密碼。默認(rèn)用戶名為root。
ssh方式訪問
因?yàn)槭鞘褂胐ocker部署的,通過ssh方式(比如git clone git@git.xiaohuruwei.com)訪問會(huì)有兩層認(rèn)證:
一層是freelancer服務(wù)器的認(rèn)證
另一層是gitlab的認(rèn)證。
后者需要使用ssh-key
前者可能需要ssh本身的反向代理(現(xiàn)在使用的nginx不支持除http,https以外的反向代理),
現(xiàn)在發(fā)現(xiàn)使用端口轉(zhuǎn)發(fā)的形式比較困難,但是可以改變默認(rèn)的gitlab的ssh端口為非標(biāo)準(zhǔn)端口:
直接修改gitlab配置文件中的變量:
gitlab_shell_ssh_port = 2222
然后重新啟動(dòng)docker容器,就可以在web界面中看到相應(yīng)的ssh地址發(fā)生了改變:ssh://git@git.xiaohuruwei.com:2222/root/test.git 然后就直接可以繼續(xù)使用git clone來(lái)繼續(xù)操作了
相關(guān)文章:
1. centos7怎么進(jìn)去tmp目錄并清除垃圾?2. CentOS7.0怎么設(shè)置屏幕分辨率?3. centos7如何快速啟動(dòng)應(yīng)用程序?4. CentOS7中無(wú)法找到pci find device函數(shù)的解決方法5. Centos7安裝Chacha20加密算法詳解6. centos7緊急修復(fù)模式怎么進(jìn)入?7. Linux(CentOS7)使用 RPM 安裝 mysql 8.0.11的教程8. centos7怎么關(guān)閉ipv6僅使用ipv4?9. CentOS7上如何安裝Kafka?CentOS7上安裝Kafka教程10. CentOS7默認(rèn)的快捷鍵怎么修改設(shè)置?
