国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

使用 Docker 搭建 GitLab

JeOam / 929人閱讀

摘要:作為互聯(lián)網(wǎng)工作者,相信對(duì)這個(gè)全球最大的同性交友網(wǎng)站一定不會(huì)陌生,使用的是目前如日中天的分布式版本控制系統(tǒng)。等這個(gè)狀態(tài)變成時(shí)則說(shuō)明已經(jīng)部署完成,可以訪問(wèn)了。修改完成后,輸入命令使配置生效,然后重啟即可。

作為互聯(lián)網(wǎng)工作者,相信對(duì) GitHub 這個(gè) 全球最大的同性交友網(wǎng)站 一定不會(huì)陌生,GitHub 使用的是目前如日中天的 Git 分布式版本控制系統(tǒng)。

Git 是什么?Git 是目前世界上最先進(jìn)的分布式版本控制系統(tǒng),沒(méi)有之一!關(guān)于 GitGitHub 的相關(guān)內(nèi)容可以查看我往期的教程。而本篇博客要介紹的是如何搭建一套私人的類似于 GitHub 的網(wǎng)站【GitLab】,它可以為個(gè)人、組織、企業(yè)提供項(xiàng)目或代碼的管理功能。

Git 與 GitHub

具體請(qǐng)查看我往期的博客文章:

Git 基礎(chǔ)用法總結(jié)

Git 系列之初識(shí) Git 與 Github

Git 系列之 Github 基礎(chǔ)設(shè)置及使用詳解

安裝環(huán)境

GitLab 的搭建有多種方式,在本篇博客將介紹一種比較簡(jiǎn)單快捷的方式,那就是使用 Docker 來(lái)搭建。

系統(tǒng):Ubuntu 18.04

Docker: 18.9.05

GitLab: 最新版本 latest

需求內(nèi)存:最低 2 GB

想要使用 Docker 來(lái)搭建 GitLab 的話需要先安裝 Docker, 關(guān)于 Docker 的詳細(xì)安裝步驟已經(jīng)在我的上一篇博客中介紹了。請(qǐng)前往查看:Docker 之 ubuntu 安裝。

搭建 GitLab

在按照上篇博客成功安裝了 Docker 之后,我們就可以在 Docker 中來(lái)搭建 GitLab 了。

GitLab 分為 社區(qū)版(Community Edition,縮寫為 CE)和 企業(yè)版(Enterprise Edition,縮寫為 EE)。社區(qū)版是免費(fèi)的,而企業(yè)版包含一些收費(fèi)服務(wù),一般來(lái)說(shuō)個(gè)人開(kāi)發(fā)者用社區(qū)版就足夠了,本篇博文的教程也只是針對(duì)社區(qū)版。

首先需要先下載 GitLab CE 的鏡像,使用下面的命令進(jìn)行下載,因?yàn)槲募^大,所以可能需要一點(diǎn)時(shí)間,耐心等待即可。

# 不加 tag 則默認(rèn)為最新版本 latest (一般使用這種)
$ sudo docker pull gitlab/gitlab-ce

# 如果需要下載其他版本,加上對(duì)應(yīng)的 tag 即可,如:
$ sudo docker pull gitlab/gitlab-ce:rc

下載完成之后只需要一行命令即可啟動(dòng) GitLab ,復(fù)制下面的命令直接運(yùn)行即可。

$ sudo docker run --detach 
  --hostname gitlab.example.com 
  --publish 443:443 --publish 80:80 --publish 22:22 
  --name gitlab 
  --restart always 
  --volume /srv/gitlab/config:/etc/gitlab 
  --volume /srv/gitlab/logs:/var/log/gitlab 
  --volume /srv/gitlab/data:/var/opt/gitlab 
  gitlab/gitlab-ce:latest

這條命令很長(zhǎng),我們來(lái)分解一下看看每行都代表什么意思。

$ sudo docker run --detach 
  --hostname gitlab.example.com    # 設(shè)置主機(jī)名或域名
  --publish 443:443 --publish 80:80 --publish 22:22  # 本地端口的映射
  --name gitlab      # gitlab-ce 的鏡像運(yùn)行成為一個(gè)容器,這里是對(duì)容器的命名
  --restart always   # 設(shè)置重啟方式,always 代表一直開(kāi)啟,服務(wù)器開(kāi)機(jī)后也會(huì)自動(dòng)開(kāi)啟的
  --volume /srv/gitlab/config:/etc/gitlab    # 將 gitlab 的配置文件目錄映射到 /srv/gitlab/config 目錄中
  --volume /srv/gitlab/logs:/var/log/gitlab  # 將 gitlab 的log文件目錄映射到 /srv/gitlab/logs 目錄中
  --volume /srv/gitlab/data:/var/opt/gitlab  # 將 gitlab 的數(shù)據(jù)文件目錄映射到 /srv/gitlab/data 目錄中
  gitlab/gitlab-ce:latest  # 需要運(yùn)行的鏡像

運(yùn)行成功之后,可以使用下面的命令列表所有的容器,當(dāng)然其中應(yīng)該包括剛運(yùn)行的 gitlab容器。

$ sudo docker container ls

如上圖所示,可以看到 GitLab 已經(jīng)在運(yùn)行了,其他有一個(gè)屬性 STATUShealth: starting,說(shuō)明 gitlab 的服務(wù)正在啟動(dòng)中,還沒(méi)有啟動(dòng)完畢。等這個(gè)狀態(tài)變成 healthy 時(shí)則說(shuō)明已經(jīng)部署完成,可以訪問(wèn)了。使用 ip addr 命令查看系統(tǒng)的 IP 地址,然后在瀏覽器輸入地址即可訪問(wèn)。

配置郵件服務(wù)器

想要讓 GitLab 給你發(fā)送郵件,還要配置一下郵件服務(wù)器,這里以QQ郵箱的 IMAP/SMTP服務(wù) 來(lái)配置。

打開(kāi)郵箱->設(shè)置->賬戶,然后開(kāi)啟 IMAP/SMTP服務(wù),然后根據(jù)文檔獲取 授權(quán)碼 ,這步比較重要。

然后打開(kāi)在系統(tǒng)中打開(kāi)文件 /srv/gitlab/config/gitlab.rb 文件,可以使用geditvivim等等編輯器編輯。找到 Email Settings的注釋位置,然后添加以下內(nèi)容:

### Email Settings
gitlab_rails["smtp_enable"] = true # 開(kāi)啟 SMTP 功能
gitlab_rails["smtp_address"] = "smtp.qq.com"
gitlab_rails["smtp_port"] = 465 # 端口不可以選擇587,測(cè)試過(guò)會(huì)發(fā)送郵件失敗
gitlab_rails["smtp_user_name"] = "212****71@qq.com" # * 你的郵箱賬號(hào),也可以是ge**lin@qq.com等
gitlab_rails["smtp_password"] = "cdns********fdgc" # * 授權(quán)碼,不是密碼
gitlab_rails["smtp_authentication"] = "login"
gitlab_rails["smtp_enable_starttls_auto"] = true
gitlab_rails["smtp_tls"] = true
gitlab_rails["gitlab_email_from"] = "212****71@qq.com" # * 發(fā)件人信息,必須跟‘smtp_user_name’保持一致,否則報(bào)錯(cuò)
gitlab_rails["smtp_domain"] = "qq.com" # 修改并不影響 可修改為exmail.qq.com/james.com 經(jīng)測(cè)試完全不影響,刪除也不影響,并且發(fā)送的郵件都是一樣的。

上面這些參數(shù),除了注釋開(kāi)頭加了 * 的需要修改為你自己的信息之外,其他信息照寫即可,配置完成后保存。然后輸入下面的命令使配置生效。

# 使用 Docker安裝的 gitlab 只能使用下面的命令,gitlab-ctl reconfigure命令是不會(huì)生效的
$ sudo docker exec gitlab gitlab-ctl reconfigure

使配置生效之后我們可以使用 gitlab 自帶的工具進(jìn)行一下測(cè)試。依次執(zhí)行下面的命令:

# 開(kāi)啟 gitlab 的 bash 工具
$ sudo docker exec -it gitlab bash

# 開(kāi)啟 gitlab-rails 工具
$ gitlab-rails console production

# 發(fā)送郵件進(jìn)行測(cè)試,換自己郵箱哈~
Notify.test_email("gekylin@gmail.com", "Message Subject", "Message Body").deliver_now

測(cè)試完成之后重啟 gitlab 即可。

配置 Git 倉(cāng)庫(kù)訪問(wèn)路徑

在之前第一次運(yùn)行 gitlab 容器的時(shí)候,有一個(gè)參數(shù) hostnamegitlab.example.com , 如果你沒(méi)有配置相應(yīng)域名的話,你的倉(cāng)庫(kù)的地址將會(huì)變?yōu)橄旅孢@樣:

ssh : git@gitlab.example.com:James/test.git

http:http://gitlab.example.com/Jam...

如果域名不存在的話,這個(gè)地址是無(wú)法進(jìn)行 clone 的。

為了解決這個(gè)問(wèn)題,我們可以設(shè)置成 IP 或 你配置了的域名來(lái)訪問(wèn)。

打開(kāi)文件 /srv/gitlab/config/gitlab.rb 文件并找到 # external_url "GENERATED_EXTERNAL_URL" 這行,去掉注釋,并按照下面的格式修改。

# ip 形式
external_url "http://192.168.1.44"

# 域名形式
external_url "http://JemGeek.com"

# 子域名
external_url "http://gitlab.JemGeek.com"

# 其他形式
external_url "http://JemGeek.com/gitlab"

以上形式都是可以的。修改完成后,輸入命令 sudo docker exec gitlab gitlab-ctl reconfigure 使配置生效,然后重啟 gitlab 即可。

重啟之后,倉(cāng)庫(kù)的地址將變?yōu)橄旅孢@樣,以 ip 形式為例:

ssh : git@192.168.1.44:James/test.git

http:http://192.168.1.44/James/tes...

容器的常用操作

在 Docker 中,gitlab 是作為一個(gè)容器存在的,gitlab 的所有程序,配置,依賴等都在這個(gè)容器中。下面列出一些容器的常用操作命令。

# 開(kāi)啟 gitlab 容器
# 上面那個(gè)特別長(zhǎng)的那一條命令僅在第一次運(yùn)行 gitlab 的時(shí)候需要
# 之后開(kāi)啟 gitlab 使用下面的命令即可
$ sudo docker start gitlab

# 關(guān)閉 gitlab
$ sudo docker stop gitlab

# 重啟 gitlab
$ sudo docker restart gitlab
其他

關(guān)于DockerGitLab 的知識(shí)還有很多,我會(huì)在后續(xù)的文章繼續(xù)介紹,歡迎您持續(xù)關(guān)注本博客。

更多技術(shù)文章歡迎關(guān)注我的博客主頁(yè):http://JemGeek.com

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/27811.html

相關(guān)文章

  • DevOps 從零開(kāi)始-倉(cāng)庫(kù)環(huán)境搭建Docker,Nginx,Nexus,Gitlab,免費(fèi)Htt

    摘要:本文章用于描述如何從零開(kāi)始進(jìn)行阿里云倉(cāng)庫(kù)的搭建,以及過(guò)程中遇到的相關(guān)問(wèn)題。涉及的內(nèi)容包括,,,,。目標(biāo)硬盤掛載阿里云額外購(gòu)買的硬盤服務(wù),需要僅掛載后才可以正常使用。域名代理免費(fèi)代理的域名通過(guò)阿里云域名解析暴露到外網(wǎng)。 本文章用于描述如何從零開(kāi)始進(jìn)行阿里云倉(cāng)庫(kù)的搭建,以及過(guò)程中遇到的相關(guān)問(wèn)題。涉及的內(nèi)容包括Docker,Nginx,Nexus,Gitlab,Https。 背景 需要搭建一...

    FWHeart 評(píng)論0 收藏0
  • Docker搭建GitLab

    摘要:二配置修改配置文件編輯文件端口。將容器時(shí)間和在一個(gè)時(shí)區(qū)三訪問(wèn)訪問(wèn),系統(tǒng)默認(rèn)的管理員賬號(hào)為,第一次訪問(wèn),會(huì)要求初始化管理員賬號(hào)的密碼。 官方中文教程:https://www.gitlab.com.cn/ins... 官方安裝鏈接:https://about.gitlab.com/install 普通方式安裝請(qǐng)見(jiàn):https://segmentfault.com/a/11... 環(huán)境...

    kumfo 評(píng)論0 收藏0
  • Docker Swarm集群搭建教程

    摘要:現(xiàn)階段,容器技術(shù)已經(jīng)相當(dāng)成熟,就算是中小型公司也可以基于鏡像服務(wù)輕松搭建自己的集群服務(wù)。線上環(huán)境可以設(shè)置為,測(cè)試環(huán)境設(shè)置為安裝創(chuàng)建一個(gè)項(xiàng)目登錄創(chuàng)建一個(gè)項(xiàng)目。接下來(lái)我們就可以訪問(wèn)集群任意一臺(tái)機(jī)器的端口。 現(xiàn)階段,Docker容器技術(shù)已經(jīng)相當(dāng)成熟,就算是中小型公司也可以基于 Gitlab、Aliyun鏡像服務(wù)、Docker Swarm 輕松搭建自己的 Docker集群服務(wù)。 安裝 Dock...

    endless_road 評(píng)論0 收藏0
  • 使用docker搭建gitlab環(huán)境

    摘要:服務(wù)的依賴實(shí)現(xiàn)解耦,有多個(gè)服務(wù)依賴同一個(gè),其中一個(gè)需要重啟,而導(dǎo)致其他服務(wù)中斷最重要的原因我想試試閑話少說(shuō)了。。。拉取鏡像注意如果沒(méi)有指定對(duì)應(yīng)的版本,默認(rèn)會(huì)拉取版本經(jīng)過(guò)漫長(zhǎng)的等待。。。也可能會(huì)出現(xiàn)莫名其妙的問(wèn)題。。。 docker搭建gitlab 構(gòu)想: 通過(guò) docker 容器技術(shù),在centos7系統(tǒng)下,使用docker鏡像,安裝gitlab,并將gitlab的http,https...

    Tikitoo 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<