docker在centos安裝教程:
官方教程:https://docs.docker.com/install/linux/docker-ce/centos/
1.查詢(xún)是否安裝過(guò)
yum list installed | grep docker
2.卸載舊版本
sudo yum -y remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
3.安裝所需軟件包
sudo yum -y install -y yum-utils \
device-mapper-persistent-data \
lvm2
4.設(shè)置穩(wěn)定的存儲(chǔ)庫(kù)
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
5.安裝最新版本的Docker Engine-Community和containerd
sudo yum -y install docker-ce docker-ce-cli containerd.io
6.啟動(dòng)docker
sudo systemctl start docker
7.通過(guò)運(yùn)行hello-world 映像來(lái)驗(yàn)證是否正確安裝了Docker
sudo docker run hello-world
-
此命令下載測(cè)試圖像并在容器中運(yùn)行。容器運(yùn)行時(shí),它會(huì)打印參考消息并退出
image.png
下面就開(kāi)始搭建gitlab倉(cāng)庫(kù)
1.拉取gitlab鏡像
docker pull gitlab/gitlab-ce
2.下載速度太慢,設(shè)置國(guó)內(nèi)的阿里鏡像加速
docker阿里鏡像地址,具體使用參考下面鏈接
參考地址 https://blog.csdn.net/Funny_Ma/article/details/96478395
3.啟動(dòng)gitlab
sudo docker run --detach \
--hostname gitlab.example.com \
--publish 10443:443 --publish 1080:80 --publish 1022:22 \
--name gitlab \
--restart always \
--volume /usr/local/docker/gitlab/config:/etc/gitlab \
--volume /usr/local/docker/gitlab/logs:/var/log/gitlab \
--volume /usr/local/docker/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce:latest
- 解釋一下上面的一條長(zhǎng)命令
--hostname gitlab.example.com \ # 設(shè)置主機(jī)名或域名
--publish 10443:443 --publish 1080:80 --publish 1022:22 \ #本地端口的映射
--name gitlab \ # gitlab-ce 的鏡像運(yùn)行成功的容器命名為gitlab
--restart always \ # 設(shè)置重啟方式,always 代表一直開(kāi)啟,即開(kāi)機(jī)自啟
--volume 分別將 gitlab 的配置文件、日志文件、數(shù)據(jù)文件目錄映射到 /usr/local/docker/gitlab的相應(yīng)目錄中
4.通過(guò)命令查看所有容器
docker ps -a

5.因?yàn)槲覀儼裧itlab映射到1080端口,所以防火墻開(kāi)啟1080端口
# 開(kāi)啟1080端口
firewall-cmd --zone=public --add-port=1080/tcp --permanent
# 重啟防火墻才能生效
systemctl restart firewalld
# 查看已經(jīng)開(kāi)放的端口
firewall-cmd --list-ports
5.訪問(wèn)http://192.168.8.128:1080
- 注意改成你服務(wù)器的ip
- 第一次訪問(wèn)讓你設(shè)置密碼,默認(rèn)賬戶(hù)是root

-
設(shè)置好密碼,root賬戶(hù)名登錄即可
image.png

- 接下來(lái)怎么使用,就不是本文要講的范圍了哦
- 新建一個(gè)項(xiàng)目,clone的時(shí)候發(fā)現(xiàn)地址http://gitlab.example.com/root/test.git
image.png
上面設(shè)置的時(shí)候設(shè)置主機(jī)名或者域名的時(shí)候設(shè)置了gitlab.example.com,這時(shí)候怎么解決?
- 去上面那條長(zhǎng)命令找到配置文件地址,我的是這個(gè)
cd /usr/local/docker/gitlab/config
-
vim打開(kāi)進(jìn)入這個(gè)文件
image.png 搜索這行# external_url 'GENERATED_EXTERNAL_URL'
-
去掉注釋并改成你的ip或域名,保存退出。
image.png 使配置生效
docker exec gitlab gitlab-ctl reconfigure
- 重啟gitlab
docker restart gitlab

- 啟動(dòng)gitlab較慢,遇到502多等一會(huì)。
-
啟動(dòng)成功,看到clone的url已經(jīng)修改成了ip
image.png
windows上用docker搭建gitlab私庫(kù)
- 注意更改gitlab的config/logs/data的目錄到windows的指定目錄
docker run -d --hostname localhost -p 10080:80 -p 10443:443 --name gitlab --restart always -v D:\java\docker\gitlab\config:/etc/gitlab -v D:\java\docker\gitlab\logs:/var/log/gitlab -v D:\java\docker\gitlab\data:/var/data/gitlab gitlab/gitlab-ce:latest
- 上面的命令執(zhí)行完后可執(zhí)行下面命令查看gitlab容器的狀態(tài)
docker ps -a
- 如果狀態(tài)一直是health: starting 而不變成healthy,則打開(kāi)配置文件夾,如上面長(zhǎng)命令中設(shè)置的配置文件夾為D:\java\docker\gitlab\config,則打開(kāi)這個(gè)文件夾下的gitlab.rb文件。修改其中配置
external_url 'http://你的ipv4地址'
gitlab_rails['gitlab_shell_ssh_port'] = 10022
- 再次執(zhí)行docker ps -a發(fā)現(xiàn)狀態(tài)變成healthy就可以訪問(wèn)了,沒(méi)變可以重啟gitlab容器
docker restart gitlab
- 成功啟動(dòng)后訪問(wèn)localhost:10080就可以設(shè)置密碼了。默認(rèn)賬戶(hù)名root





