# Docker运行配置Gitlab

作者:Odboy (opens new window)

本站地址:https://blog.odboy.cn (opens new window)

# Docker Registry Mirror 配置(镜像加速)

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-EOF
{
"registry-mirrors": [
"https://dockerproxy.com",
"https://mirror.baidubce.com",
"https://docker.m.daocloud.io",
"https://docker.nju.edu.cn",
"https://docker.mirrors.sjtug.sjtu.edu.cn"
]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
1
2
3
4
5
6
7
8
9
10
11
12
13
14

# Docker Run Gitlab

docker pull gitlab/gitlab-ce:14.8.2-ce.0

mkdir -p /home/gitlab/{etc,log,opt}

docker run -itd -u root \
--privileged=true  \
--name gitlab \
--restart=always \
-p 2443:443 \
-p 2080:80 \
-p 2022:22 \
-v /home/gitlab/etc:/etc/gitlab \
-v /home/gitlab/log:/var/log/gitlab \
-v /home/gitlab/opt:/var/opt/gitlab \
gitlab/gitlab-ce:14.8.2-ce.0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

# 获取root密码(登录用户名是root,不是Administrator)

docker exec ....

cat /etc/gitlab/initial_root_password|grep 'Password:'

所以密码是:CWXGYWn+ZiOjVEX4oa0xxneSckKXT7f+T0P0iSJgs0E=
1
2
3
4
5

10000.png

# 自定义Gitlab外部展示的端口

  • 新增配置项
external_url 'http://192.168.234.129:2080'
nginx['listen_port'] = 80
gitlab_rails['gitlab_shell_ssh_port'] = 22
1
2
3
  • 步骤说明
docker exec ....

vi /etc/gitlab/gitlab.rb

# gitlab访问地址,填写域名或IP地址,如果端口不写的话默认为80端口
# 192.168.234.129这个地址是我本地虚机的IP,为什么是2080,请回到“Docker Run Gitlab”重新看一遍docker指令
external_url 'http://192.168.234.129:2080'

# 如果你只是这样改,你会发现gitlab访问不了。因为Gitlab默认会用这个端口号作为其Nginx的监听端口。因为我们这里其实是监听的80端口,所以需要加如下配置:
nginx['listen_port'] = 80

# 当然,这个配置也别忘记了
gitlab_rails['gitlab_shell_ssh_port'] = 22

wq!

gitlab-ctl reconfigure
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

# Docker Run GitlabRunner

Runner的版本和Gitlab"可以"不一致

10001.png 10002.png 10003.png

docker pull gitlab/gitlab-runner:v14.8.2

mkdir -p /home/gitlab-runner/{config,var}

# /usr/local/dragonwell-11.0.19.15+7-GA和/usr/local/apache-maven-3.8.1需要在放在宿主机上
docker run -d -u root --privileged=true --name gitlab-runner --restart always  -v /home/gitlab-runner/config:/etc/gitlab-runner  -v /home/gitlab-runner/var/docker.sock:/var/run/docker.sock -v /usr/local/dragonwell-11.0.19.15+7-GA:/usr/local/dragonwell11 -v /usr/local/apache-maven-3.8.1:/usr/local/maven3 gitlab/gitlab-runner:v14.8.2

# 创建软连接
ln -s /usr/local/maven3/bin/mvn /usr/bin/mvn
ln -s /usr/local/dragonwell11/bin/java /usr/bin/java

# 注册Runner(注册方法建议百度,毕竟Google也不太好进)
# 重点!!!注册只能一气呵成,按退格键是无法删除的
docker exec -it $(docker ps |grep gitlab-runner|awk '{print $1}') gitlab-runner register
# 注册完毕后,状态为online说明正常,不然就会有问题
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

# 本地主机上配置Git

# Gitlab创建的用户的邮箱
git config --global user.email "admin@example.com"
# Gitlab创建的用户
git config --global user.name "Administrator"
1
2
3
4
最近更新: 2024-10-11
2017 - 武林秘籍   |