當前位置:首頁 » 密碼管理 » gitlab無法訪問

gitlab無法訪問

發布時間: 2023-07-23 08:26:06

1. 打開我自己的網站,打不開,頁面顯示「將您重定向的次數過多」,求解。

出現此問題的原因多是由於DNS設置錯誤,或者IE組件出現錯誤導致的DNS可以手動設置,IE組件非常的多,因此手動修復很困難,使用電腦管家修復即可,具體操作步驟如下:

1、首先,在計算機桌面上單擊電腦管家,如下圖所示,然後進入下一步。

2. 怎麼在win10下訪問搭建在ubuntu上的gitlab伺服器

GitLab是由Ruby語言開發的基於Linux的Git伺服器,是我見過的最強大的Git伺服器。發現它之後,立即決定將Git伺服器換成GitLab。但安裝好GitLab之後面臨一個問題,如何將伺服器上的git項目直接導入到GitLab,之前的Git伺服器是由是git+apache搭建的(詳見在Linux上用Apache搭建Git伺服器)。
在網上發現了這篇文檔——Import bare repositories into your GitLab instance,並按之進行了操作。
1)設置存放代碼庫的主目錄
vi /etc/gitlab/gitlab.rb

比如這里設置為:git_data_dir "/gitlab/repos"
2)訪問剛搭建的GitLab站點,創建一個group,比如cnblogs。
這時會在 /gitlab/repos 下創建 /gitlab/repos/repositories/cnblogs 文件夾
然後在/gitlab/repos/repositories/創建一個文件夾,比如cnblogs
3)將現有的所有git項目文件復制到這個文件夾
cp -r /data/git/* /gitlab/repos/repositories/cnblogs

4)修改一下復制過來的文件夾的所有者:
chown -R git:git /gitlab/repos/repositories/cnblogs

5)運行GitLab導入命令
cd /var/opt/gitlab
gitlab-rake gitlab:import:repos

等了一段時間之後,顯示done,卻一個項目也沒導入進來。
經研究發現,在導入時,GitLab只認文件夾名以.git結尾的項目。於是,將要導入的項目文件夾名稱加上.git後綴,再次進行導入。
結果顯示導入成功,比如:
Processing cnblogs/CNBlogsJob.git
* Created CNBlogsJob (cnblogs/CNBlogsJob.git)
Done!

可以是GitLab站點上卻看不到已導入的項目。多次努力,也沒能解決這個問題。
後來,實在沒辦法,改為手動導入,導入方法如下:
1)在GitLab站點上創建與要導入的項目同名的項目。
2)進入剛創建的項目文件夾
cd /gitlab/repos/repositories/cnblogs/項目名稱.git

3)刪除該文件下的所有文件
rm -rf *

4)將要導入的項目文件夾下的所有文件復制過來
cp -r /data/git/CNBlogsJob/* /gitlab/repos/repositories/cnblogs/CNBlogsJob.git

就這樣將項目一個一個地導入進來。
5)導入完成後,修改一下導入的所有項目的文件所有者
chown -R git:git /gitlab/repos/repositories/cnblogs

如果不修改所有者,客戶端無法進行git push。
就這樣手動地完成了現有Git項目的導入。
備註:操作系統是CentOS 6.2,GitLab版本是7.8.4。

3. gitlab重新載入報錯

在本版本的gitlab中,在/opt/gitlab*中找不到uninstall文件,無法通過該方法卸載gitlab
經過摸索,可通過以下方法徹底卸載gitlab

sudo gitlab-ctl stopsudo gitlab-ctl uninstallsudo gitlab-ctl cleansesudo rm -rf /opt/gitlab1234

之後通過reboot命令重啟系統即可
其中,可通過sudo gitlab-ctl help來獲取相關命令
sudo gitlab-ctl uninstall,關於其的說明是
Kill all processes and uninstall the process supervisor (data will be preserved).
但在實際操作中,只通過uninstall無法徹底卸載gitlab

安裝方法

bitnami的下載鏈接https://bitnami.com/stack/gitlab/installer中只提供了虛擬機版本及雲伺服器版本,本人沒找到.run的安裝文件,於是只能通過官方的方法安裝。

本人是在amazon的雲伺服器上進行安裝,由於Ram只有1GB,不符合gitlab的最低運行要求,若直接安裝,會使得伺服器卡頓不堪,難以使用,且gitlab也無法正常運行,進入gitlab的服務網頁,會提示
502 Whoops, GitLab is taking too much time to respond:

無法使用,於是得先配置虛擬內存
另外,在伺服器剛啟動時,也會返回這個提示,是因為gitlab系統還沒跑起來,稍等片刻即可

sudo dd if=/dev/zero of=/swapfile bs=1024 count=2048ksudo mkswap /swapfilesudo swapon /swapfilesudo vim /etc/fstab
++/swapfile none swap defaults 0 012345

++後面的內容是添加到fstab文件中的內容
此處配置的虛擬內存(交換文件)是2GB,gitlab最低的運行內存要求是2GB,讀者們可以根據自己的硬碟情況和內存情況進行試驗
由於新版gitlab佔用內存變大,系統默認的在內存佔用超過40%時啟用swap不太合適,現象就是通過putty連接伺服器過慢,打開gitlab的網頁過慢等,影響到使用
於是可以把該閾值調整為50%。
方法是修改/etc/sysctl.conf文件

sudo vim /etc/sysctl.conf1

找到

vm.swappiness=601

將60,改為50
若找不到,則在文件最後一行添加上即可
vm.swappiness=60的意思是,當內存佔用超過40%時啟用swap
經測試,在本測試機上若按網上通常說的,把該閾值改為90%,是會出現訪問慢的問題,讀者需要根據自己的機器情況進行相關的調整

此外,gitlab佔用80埠提供網頁服務,若需要與其他web伺服器同時運行,需要進一步的設置

  • 進入官方安裝向導https://about.gitlab.com/downloads/

  • 選擇系統平台

  • 根據提示輸入終端命令

    終端命令如下:

  • sudo apt-get install curl openssh-server ca-certificates postfix

  • curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bashsudo apt-get install gitlab-cesudo gitlab-ctl reconfigure1234

  • 本人使用amazon的雲伺服器,下載速度有十幾MB/s,無需擔心網速的問題,安裝過程及其快速,gitlab是使用nginx作Web伺服器,其中配置有redis等服務

    初次通過網頁登錄gitlab,選擇login,將提示修改初始密碼,修改過後,可使用root作為用戶名以及剛修改的密碼來登錄gitlab

    配置方法(ubuntu)

  • 域名(ip)配置

  • cd /etc/gitlabsudo vim gitlab.rb

  • /external_url123

  • 把external_url項修改為自己的域名或者是ip地址

  • sudo postfix flush #立即發送隊列里的所有郵件sudo postqueue -p #顯示隊列里的郵件列表sudo postsuper -d ALLsudo postsuper -d MessageID #刪除特定ID的郵件sudo postfix reload #重新載入配置文件echo "This is the content" | mail -s "Mail Subject" target_address

  • #echo後的雙引號內接郵件內容,"Mail Subject"雙引號內是主題的名稱,target_address處填寫目的郵箱地址12345678

  • /var/log/mail.log``/var/log/mail.err裡面分別有日誌和錯誤原因,內容復雜,比較難看清楚

    配置文件只有一個:/etc/postfix/main.cfg
    但其中的內容基本不用改,我改了好像也沒什麼影響
    而對發件人有影響的是/etc/hostname,其中放著本機的名稱,修改它可使得測試時的發件人改變
    在本機上,若hostname是ip-xxx-xx-xx-xxx,發件人地址則為[email protected],若為其他,則發件人地址為』ubuntu@$hostname』,需要重啟才能生效,其中ubuntu是伺服器的登錄用戶名
    無論如何,測試郵件都可發送,只是時間長短的問題,可查看郵件隊列里的郵件,以及目標郵件的垃圾箱和被攔截郵件列表

4. 使用Docker部署GitLab

查看是否拉取成功

編寫內容

在該文件目錄下,授予 gitlab_start.sh 執行許可權

要注意埠是否被佔用

修改 gitlab_start.sh 文件,將映射到宿主機的埠改為 8088 ,或者其它沒被佔用的埠

重新運行 ./gitlab_start.sh 文件,報錯如下

這是因為之前的容器雖然沒有運行起來,但是已經創建了,把它刪除掉

重新運行 gitlab_start.sh 文件

可以看到容器成功啟動

創建 docker-compose.yml 文件,並在該文件所在的文件夾目錄下運行 docker-compose up -d
需要事先安裝 docker-compose
安裝docker-compose

:埠和映射目錄可根據需要修改

若開放訪問埠為 80 , external_url 可不加埠號,默認80

若以 3.1 方法創建,需要修改相關配置文件

在Gitlab容器 運行狀態 時,重啟服務,並遠程訪問網站測試

*若訪問Gitlab出現502等錯誤,使用命令檢查錯誤原因

e.g.

查看上述配置文件,查找錯誤原因

[圖片上傳失敗...(image-e9789-1636370071222)]

雖然容器啟動成功,但是卻沒辦法根據 ip:port 訪問gitlab

拉取tomcat鏡像

為了測試8088埠是否可用,先把gitlab的容器暫停

啟動tomcat容器,並將tomcat容器的8080埠映射到宿主機的8088埠

一切正常,訪問ip:8088,還是和以前一樣訪問不了

因為之前系統的防火牆一直是關閉的並且其它的服務能正常訪問,所以沒有懷疑是防火牆的問題

把防火牆打開

訪問之前能正常訪問的服務,果然沒法正常訪問。

把該服務的埠開發,正常訪問。

打開8088埠

再次訪問

返回tomcat的404頁面: HTTP Status 404 – Not Found

雖然是404頁面,但是說明此時的埠是能正常訪問的

把tomcat的容器停止運行,重新運行gitlab容器

雖然沒啟動成功,但離成功更進一步了:)

嘗試把這個容器刪除掉,再創建一次後還是得到這個錯誤。

還是訪問不了,檢查一下GitLab內部是否有問題

一切正常

我再次換成tomcat容器進行測試,發現8088埠訪問不了了。

但是在宿主機內ping本機是可以的

但是,換成 ip:8088 則不行

根據以上兩篇文章,提出 阿里雲的內網eth0 網段正好跟Docker 的虛擬網卡都是 172 網段,有沖突

觀察發現我使用的雲伺服器也是阿里雲,並且通過 ifconfig 查看

並且查看阿里雲的內網ip確實也是 172 開頭。

編輯配置文件 /etc/docker/daemon.json ,若 daemon.json 文件不存在新建即可。

重新啟動docker服務

可以看到docker0 的地址變了。

但是要注意,使用 docker 啟動的服務會默認使用 docker0 ,如果是用 docker-compose 啟動的服務則不會。上面的 br-12aa369ee4a6 對應的是docker-compose啟動的服務,可以看到還是172的網段。

docker-compose up使用自定義的網段的兩種方式(從其根源指定)

根據該文使用方法2,即修改 daemon.json 。但並不能成功訪問,我的環境是: docker:20.10.7 , docker-compose:1.24.1

後面發現訪問不成功的原因在於 docker 與防火牆之間的關系,可以關掉防火牆,開啟 docker ,不能訪問則打開防火牆。在它們之間來回試探 = =。
後面嘗試過關閉 firewalld ,打開 iptables

在啟用 iptables 時,一般關掉 iptables 可以正常訪問,打開則不能正常訪問。
在啟用 firewalld 時,按照 docker firewalld 之間啟動關閉的順序不同,有時是開著防火牆能訪問,有時是關了防火牆能訪問。

但是容器內不能訪問外部網路,該問題現在還未解決。 有一種迂迴的解決方法就是容器使用 host 網路模式

問題 :懷疑是docker,firewalld與iptables之間的設置問題

Docker與IPtables

docker 埠映射 及外部無法訪問問題

Docker and IPtables

還有一種訪問不了GitLab的情況是埠映射和配置文件有誤。

快速的解決方法:將宿主機埠號和容器號設置相同,可參考下面的博客。

利用GitLab Docker images安裝GitLab(填坑)

[圖片上傳失敗...(image-457ad3-1636370071221)]

如果系統環境正常,安裝會十分順利,一般不會有奇怪的問題。
我在不同的伺服器安裝過
阿里雲 CentOS 7.6 : 訪問正常,但是因內存不夠出現502錯誤,容器內可正常連接外部網路
阿里雲 Alibaba Cloud Linux 2 : 可能不能正常訪問容器,容器內不能正常連接外部網路。懷疑是防火牆與docker的問題。

修改密碼

5. 怎麼查看一個springboot項目的源代碼在哪

要查看基於Spring Boot的Java項目的代碼,您需要進行以下步驟:

  • 查看項目結構:您可以在部署項目的位置找到項目文件夾。打開項目文件夾並查看項目結構。您可以找到源代碼文件夾(通常是「src」文件夾),該文件夾中包含Java源代碼辯慶文件。您也可以找到配置文件,資源文件和其他相關文件。

  • 查看源代碼:在源代碼文件夾中,您可以找到Java文件,這些文件包含應用程序的代碼邏輯。您可以使用任何文本編輯器或IDE(集成開發環境)打開這些文件。IDE(如Eclipse、IntelliJ IDEA)通常提供更好的開發環境和代碼閱讀功能。

  • 尋找關鍵詞:如果您不知道源代碼的特定位置,請嘗試在項目中搜索關鍵詞或特定函數。您可以使用文本編攜慶握輯器或IDE的搜索功能來搜索關鍵詞。

  • 調試代碼:如果您想深入了解代碼差胡的實際執行過程,可以使用IDE的調試工具。在調試模式下,您可以單步執行代碼,並查看變數值和執行結果。

  • 總之,查看基於Spring Boot的Java項目代碼需要一定的編程知識和經驗。如果您不熟悉Java編程語言或Spring框架,建議您先學習這些知識,然後再嘗試查看項目代碼。

熱點內容
滑板鞋腳本視頻 發布:2025-02-02 09:48:54 瀏覽:432
群暉怎麼玩安卓模擬器 發布:2025-02-02 09:45:23 瀏覽:557
三星安卓12彩蛋怎麼玩 發布:2025-02-02 09:44:39 瀏覽:743
電腦顯示連接伺服器錯誤 發布:2025-02-02 09:24:10 瀏覽:536
瑞芯微開發板編譯 發布:2025-02-02 09:22:54 瀏覽:146
linux虛擬機用gcc編譯時顯示錯誤 發布:2025-02-02 09:14:01 瀏覽:232
java駝峰 發布:2025-02-02 09:13:26 瀏覽:651
魔獸腳本怎麼用 發布:2025-02-02 09:10:28 瀏覽:532
linuxadobe 發布:2025-02-02 09:09:43 瀏覽:212
sql2000資料庫連接 發布:2025-02-02 09:09:43 瀏覽:726