給阿里雲伺服器安裝git
㈠ 阿里雲的伺服器安裝Gitlab有成功的嗎
可以試下,然後咨詢下阿里雲的客服人員,我用的是和阿里雲合作的小鳥雲伺服器,挺不錯的。
㈡ 阿里雲的伺服器安裝Gitlab有成功的嗎
系統默認安裝的python,但是沒有安裝python-devel,安裝默認的包時,沒有提示錯誤,估計是BUG,但是在源碼編譯時提示python.h找不到
㈢ 怎麼在阿里雲伺服器搭建gitlab
和本地搭建一樣的,我之前也搭建過
雖然整個搭建過程無比之艱辛,幾乎佔用了我一天的時間,但是最後搭好了,還是很開心滴。最後,如果你買的是512M的乞丐版阿里雲,建議一定要升級至1024M內存,同時創建sawpfile,大小1G就夠了,否則跑不動就只能呵呵了。
㈣ 阿里雲伺服器 怎麼用git部署代碼
使用阿里雲Ubuntu 12.0.4 64位操作系統做git伺服器。
首先git伺服器有兩種訪問方式可以選擇:http方式和ssh的方式,http方式更容易使用。
1、http方式的git伺服器搭建以及使用git命令行訪問:
On the Server
1) Install Ubuntu Server, this is the base of our git server obviously
2) Now we need to install a couple of packages, these being 『git-core』 and 『apache2′, we do this like so:-
apt-get update
apt-get install apache2 git-core
3) Now we need to create a new folder for your new repository and set some inital permissons, we do this like so:-
cd /var/www
mkdir test-repo.git
cd test-repo.git
git --bare init
git update-server-info
chown -R www-data.www-data .
4) We now need to enable WebDAV on Apache2 of which we will use to serve the repository:-
a2enmod dav_fs
5) We now need to configure the access restrictions to our repository by creating the following file:-
/etc/apache2/conf.d/git.conf
Then fill it in with the following content:-
<Location /test-repo.git>
DAV on
AuthType Basic
AuthName "Git"
AuthUserFile /etc/apache2/passwd.git
Require valid-user
</Location>
Then save and close the file, lets move on to the next bit..
6) Next we need to create a user account of which you will need to use to browse of commit to the repository..
htpasswd -c /etc/apache2/passwd.git <user>
You could then be prompted to enter the password for the user too and confirm it!
7) Ok that』s it for the server side configuration… we just need to restart Apache2 like so and then we should be ready to move on to the client side stuff!
/etc/init.d/apache2 restart
…you can now move on to the client side stuff!
On the client side
Ok so now we need to create a local (on your desktop machine) repository and then we』ll initiate the new remote repository… So, if your using Linux/MacOSX bring up the terminal and type the following commands:-
mkdir ~/Desktop/test-project
cd ~/Desktop/test-project
git init
git remote add origin http://<user>@<server name or IP address>/test-project.git
touch README
git add .
git commit -a -m 「Initial import」
git push origin master
Done! – Your intiial file named 『README』 which currently is just blank has now been committed and you』ve pushed your code to your new git server which has now completed the Git reposity creation process, now in future you can 『clone』 your resposity like so:-
git clone <user>@<server name or IP address>/test-project.git
注意上面連接http://<user>@<server name or IP address>/test-project.git中的user就是你htpasswd -c /etc/apache2/passwd.git <user>輸入的用戶名。
另外新建倉庫的時候,只需執行:
cd /var/www
mkdir 項目名
cd 項目名
git --bare init
git update-server-info
chown -R www-data.www-data .
然後在/etc/apache2/conf.d/git.conf中對應添加上面類似段即可。
其中:
AuthUserFile 密碼文件名
後面的文件就是你指定的密碼文件,你可以
htpasswd -c 密碼文件名 <user>
對應指定該項目的用戶名和密碼即可。添加用戶是不要-c參數:
htpasswd 密碼文件名 <user>
㈤ 如何在阿里雲上部署Rstudio server
RStudio Server 是 RStudio 公司打造的一款基於 Web 的開源編輯器,如果你熟悉 RStudio的桌面版本,那麼使用RStudio Server對你來說基本上沒什麼難度。
在實際的工程中,我們的伺服器大多是基於Linux的,比如常見的 ubuntu、centos 等。這些操作系統有時並不提供圖形化界面,這時候RStudio的伺服器版本就派上用場了。啟動RStudio Server後,進入在瀏覽器中進入某一個頁面後就可以像桌面版一樣使用RStudio編輯器。當R的代碼在伺服器上出現bug了,線上的hotfix是在所難免的,這時候必然會用到 RStudio Server 應個急。
這一次,我們將繼續利用Docker神器,快速初始化RStudio Server環境的配置,並結合Git實現代碼的版本控制。
准備
一個 Ubuntu 伺服器
第一步:安裝 RStudio Server
首先,我們通過docker 安裝一個標準的RStudio Server
docker pull quantumobject/docker-rstudio
docker run -d -p 8787:8787 quantumobject/docker-rstudio
這樣在你的電腦的8787埠就可以訪問到rstudio的登陸界面了。
第二步:初始化 RStudio 賬號
接著,我們需要初始化一個rstudio的賬號
docker exec -it container-id /bin/bash
adser harryzhu # 設置新用戶名
passwd harryzhu # 設置該用戶的密碼
mkdir /home/harryzhu # 初始化工作空間
chmod -R harryzhu /home/harryzhu # 給工作空間賦權
第三步:安裝 git
然後,我們進入rstudio的伺服器,我們打算引入git版本控制
sudo apt-get install git-core
第四步:解決 ssh 的認證問題
使用 git 的過程可能遇到SSL certificate problem。對於ssh的問題,我們可以選擇建立一個ssh認證的key,也可以在git中設置為忽略。
生成一個key:
$ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Created directory '/root/.ssh'.
連續按下回車,跳過密碼設置
顯示秘鑰信息:
sudo cat /root/.ssh/id_rsa.pub
如果沒有ssh認證的需求,也可以選擇忽略:
git config --global http.sslVerify false
第五步:在 RStudio Server 中配置Git
在最上方的菜單欄中可以選擇Project Options。
接著填寫配置。
第六步:克隆 Git 項目到本地
Git 功能已經集成在 RStudio-Server 中了,在新建項目時可以選擇新建一個Version Control 的 Git 項目。
大功告成!
這些都是小鳥雲的工程師他們告訴我的,建議你可以試試小鳥雲
㈥ 雲伺服器使用git更新部分代碼,需要用到遠程倉庫嗎
在伺服器上創建一個git倉庫 git init
在本地點卯克隆遠程git倉庫到本地 git clone
本地倉庫裡面寫代碼,添加、提交到本地倉庫 git add ; git commit
推送到遠程代碼倉庫 git push
㈦ 在阿里雲ESC上搭建的gitlit只能配置127.0.0.1作為IP訪問地址,請問如何配置可以讓外網能訪問
阿里雲現在專有網路並不綁定IP。您選擇全部未分配IP即可。然後使用公網IP訪問。記得先在安全組開啟對應的埠哦。
㈧ 使用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的問題。
修改密碼:
㈨ 如何在伺服器上配置git伺服器
第一步,安裝git:$ sudo apt-get install git
第二步,創建一個git用戶,用來運行git服務:$ sudo adser git
第三步,創建證書登錄:收集所有需要登錄的用戶的公鑰,就是他們自己的id_rsa.pub文件,把所有公鑰導入到/home/git/.ssh/authorized_keys文件里,一行一個。
第四步,初始化Git倉庫:先選定一個目錄作為Git倉庫,假定是/srv/sample.git,在/srv目錄下輸入命令:$ sudo git init --bare sample.gitGit就會創建一個裸倉庫,裸倉庫沒有工作區,因為伺服器上的Git倉庫純粹是為了共享,所以不讓用戶直接登錄到伺服器上去改工作區,並且伺服器上的Git倉庫通常都以.git結尾。然後,把owner改為git:$ sudo chown -R git:git sample.git
第五步,禁用shell登錄:出於安全考慮,第二步創建的git用戶不允許登錄shell,這可以通過編輯/etc/passwd文件完成。找到類似下面的一行:git:x:1001:1001:,,,:/home/git:/bin/bash
改為:git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell這樣,git用戶可以正常通過ssh使用git,但無法登錄shell,因為我們為git用戶指定的git-shell每次一登錄就自動退出。
第六步,克隆遠程倉庫:現在,可以通過git clone命令克隆遠程倉庫了,在各自的電腦上運行:$ git clone git@server:/srv/sample.gitCloning into 'sample'...warning: You appear to have cloned an empty repository.