gitlab搭建和使用


原文地址:https://blog.csdn.net/zhushuai662/article/details/79581377
大家常聽說Git、Github、Gitlab,很多人對着三個詞很懵逼,分別講一下這三個是什么意思。

  Git是一個開放源碼的版本控制軟件,還可以把我們的代碼push到遠程倉庫。

  Github是一個網站,提供給用戶空間創建git倉庫,保存用戶的一些數據文檔或者代碼等。

  Gitlab是一個用於倉庫管理系統的開源項目,使用Git作為代碼管理工具,並在此基礎上搭建起來web服務。可以理解為你自己專屬的github,功能基本一樣,一般公司都會有自己的代碼倉庫
下面講一下Gitlab如何在Linux服務器(centos7版本)上搭建。
服務器內存建議4G以上,我的是8g內存,CentOS Linux release 7.4.1708 (Core),執行以下代碼一路暢行,
為什么要說這個呢,之前我用國外的512M小霸王服務器,鼓搗了一下午都不可以,解決所有報錯后,更是在最后一步服務器死機,徹底GG
1
在系統防火牆中打開http和ssh的出口。
sudo yum install -y curl policycoreutils-python openssh-server
 控制台輸出“Complete!”后繼續執行命令: 
sudo systemctl enable sshd 

sudo systemctl start sshd
 使sshd服務器自動啟動,然后執行: 
sudo firewall-cmd --permanent --add-service=http 
  在執行這句命令如果出現“FirewallD is not running”的提示,則表示防火牆未打開,
  可以執行“sudo systemctl status firewalld”查看防火牆狀態,如果防火牆是“dead”狀態,
  可以執行“sudo systemctl start firewalld”命令啟動防火牆。
  再返回執行上面的添加服務命令,如果出現“success”則執行成功。
  最后執行下面命令reload防火牆。 sudo systemctl reload firewalld
  加入Gitlab的郵件服務,用於接受郵件。執行下面的命令:
sudo yum install postfix sudo systemctl enable postfix 

sudo systemctl start postfix
  如果不想使用Gitlab提供的郵件服務,可以跳過上面的命令,在安裝完Gitlab后,配置自己的郵件服務 

2
安裝Gitlab。 執行下面命令安裝倉庫
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash  
  接下來安裝Gitlab安裝包,執行下面的命令:
sudo EXTERNAL_URL="http://gitlab.example.com" yum install -y gitlab-ee 
  “http://gitlab.example.com”可以更改為你想要訪問Gitlab實例的url,如果要安裝https,需要在安裝完成后額外配置。
  比如設置為 "http:172.168.10.251:8088" 搭建完成后就可以通過這個地址訪問gitlab
  執行這個命令將會下載比較大的安裝包,時間會長一些,可以耐心等待。

3
打開瀏覽器登錄。 第一次登錄時,Gitlab會讓你修改密碼,修改后使用root賬戶和新密碼登錄。
    
如果忘記設置初始密碼,可以通過后台設置
  
cd /opt/gitlab/bin

sudo gitlab-rails console production   #需要等幾秒運行程序

u=User.where(id:1)

u.password='12345678'

u.password_confirmation='12345678'

u.save!   #注意有個嘆號

如果提示true,則修改管理員密碼成功
 
        

4、然后 添加用戶、創建組、向組中添加用戶、創建項目(按照用戶或者按照組創建)、然后各用戶自己添加ssh公鑰到gitlab中,好了,直接push或者clone代碼吧,
另外代碼倉庫默認在
/var/opt/gitlab/git-data 目錄

PS:如果不知道ssh公鑰,可以參考 https://www.cnblogs.com/lz0925/p/10725010.html

如果出現gitlab的nginx與原Nginx沖突,或者報錯如下
[root@ACA83229 nginx]# service nginx restart
Stoping nginx... nginx: [error] open() "/usr/local/nginx/logs/nginx.pid" failed (2: No such file or directory)
 failed. Use force-quit
Terminating nginx...  done
Starting nginx... nginx (pid 25521 25520 25519 25518 25517 25516 25515) already running.
此時你可以參考 https://www.cnblogs.com/lz0925/p/10879763.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM