docker-compose编排GitLab

GitLab是一个开源的git仓库服务器。用于实现代码集中托管,分为企业版和CE社区版。

部署方式:软件包部署、容器部署,这里提供docker-compose编排的方式进行部署。


docker-compose编排文件

docker-compose-gitlab.yml

相关文件在 点我进入

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
# docker-compose.yml文件参考:https://github.com/sameersbn/docker-gitlab/blob/master/docker-compose.yml
# 启动:docker-compose -f docker-compose-gitlab.yml -p gitlab up -d

version: '2.3'

# 网桥 -> 方便相互通讯
networks:
gitlab:
ipam:
driver: default
config:
- subnet: "172.22.2.0/24"

services:
redis:
container_name: gitlab_redis
restart: unless-stopped
image: redis:6.2.6
command:
- --loglevel warning
volumes:
- ./gitlab/redis/data:/data:Z
networks:
gitlab:
ipv4_address: 172.22.2.11
ports:
- "6379:6379"

postgresql:
container_name: gitlab_postgresql
restart: unless-stopped
image: sameersbn/postgresql:12-20200524
volumes:
- ./gitlab/postgresql/data:/var/lib/postgresql:Z
environment:
- DB_USER=gitlab
- DB_PASS=lijing123
- DB_NAME=gitlab_production
- DB_EXTENSION=pg_trgm,btree_gist
networks:
gitlab:
ipv4_address: 172.22.2.22
ports:
- "5432:5432"

gitlab:
container_name: gitlab
restart: unless-stopped
image: sameersbn/gitlab:15.9.1
depends_on:
- redis
- postgresql
ports:
- "3080:80"
- "3022:22"
volumes:
- ./gitlab/data:/home/git/data:Z
healthcheck:
test: ["CMD", "/usr/local/sbin/healthcheck"]
interval: 5m
timeout: 10s
retries: 3
start_period: 5m
environment:
- DEBUG=false

- DB_ADAPTER=postgresql
- DB_HOST=172.22.2.22 # 数据库ip
- DB_PORT=5432 # 数据库端口
- DB_USER=gitlab # 数据库用户
- DB_PASS=lijing123 # 数据库密码
- DB_NAME=gitlab_production # 数据库名称

- REDIS_HOST=172.22.2.11 # Redis ip
- REDIS_PORT=6379 # Redis 端口

- TZ=Asia/Shanghai
- GITLAB_TIMEZONE=Beijing

- GITLAB_HTTPS=false
- SSL_SELF_SIGNED=false

# 这几项是配置在gitlab中克隆仓库时http方式和ssh方式的ip地址和端口
- GITLAB_HOST=192.168.56.101 # 此处请填写宿主机ip TODO
- GITLAB_PORT=3080 # 此处请填写宿主机与gitlab容器服务映射端口,即上面ports暴露的端口
- GITLAB_SSH_PORT=3022 # 此处请填写宿主机与gitlab容器ssh映射端口,即上面ports暴露的端口
- GITLAB_RELATIVE_URL_ROOT=
- GITLAB_SECRETS_DB_KEY_BASE=long-and-random-alphanumeric-string
- GITLAB_SECRETS_SECRET_KEY_BASE=long-and-random-alphanumeric-string
- GITLAB_SECRETS_OTP_KEY_BASE=long-and-random-alphanumeric-string

- GITLAB_ROOT_PASSWORD=
- GITLAB_ROOT_EMAIL=

- GITLAB_NOTIFY_ON_BROKEN_BUILDS=true
- GITLAB_NOTIFY_PUSHER=false

- GITLAB_EMAIL=notifications@example.com
- GITLAB_EMAIL_REPLY_TO=noreply@example.com
- GITLAB_INCOMING_EMAIL_ADDRESS=reply@example.com

- GITLAB_BACKUP_SCHEDULE=daily
- GITLAB_BACKUP_TIME=01:00

- SMTP_ENABLED=false
- SMTP_DOMAIN=www.example.com
- SMTP_HOST=smtp.gmail.com
- SMTP_PORT=587
- SMTP_USER=mailer@example.com
- SMTP_PASS=password
- SMTP_STARTTLS=true
- SMTP_AUTHENTICATION=login

- IMAP_ENABLED=false
- IMAP_HOST=imap.gmail.com
- IMAP_PORT=993
- IMAP_USER=mailer@example.com
- IMAP_PASS=password
- IMAP_SSL=true
- IMAP_STARTTLS=false

- OAUTH_ENABLED=false
- OAUTH_AUTO_SIGN_IN_WITH_PROVIDER=
- OAUTH_ALLOW_SSO=
- OAUTH_BLOCK_AUTO_CREATED_USERS=true
- OAUTH_AUTO_LINK_LDAP_USER=false
- OAUTH_AUTO_LINK_SAML_USER=false
- OAUTH_EXTERNAL_PROVIDERS=

- OAUTH_CAS3_LABEL=cas3
- OAUTH_CAS3_SERVER=
- OAUTH_CAS3_DISABLE_SSL_VERIFICATION=false
- OAUTH_CAS3_LOGIN_URL=/cas/login
- OAUTH_CAS3_VALIDATE_URL=/cas/p3/serviceValidate
- OAUTH_CAS3_LOGOUT_URL=/cas/logout

- OAUTH_GOOGLE_API_KEY=
- OAUTH_GOOGLE_APP_SECRET=
- OAUTH_GOOGLE_RESTRICT_DOMAIN=

- OAUTH_FACEBOOK_API_KEY=
- OAUTH_FACEBOOK_APP_SECRET=

- OAUTH_TWITTER_API_KEY=
- OAUTH_TWITTER_APP_SECRET=

- OAUTH_GITHUB_API_KEY=
- OAUTH_GITHUB_APP_SECRET=
- OAUTH_GITHUB_URL=
- OAUTH_GITHUB_VERIFY_SSL=

- OAUTH_GITLAB_API_KEY=
- OAUTH_GITLAB_APP_SECRET=

- OAUTH_BITBUCKET_API_KEY=
- OAUTH_BITBUCKET_APP_SECRET=
- OAUTH_BITBUCKET_URL=

- OAUTH_SAML_ASSERTION_CONSUMER_SERVICE_URL=
- OAUTH_SAML_IDP_CERT_FINGERPRINT=
- OAUTH_SAML_IDP_SSO_TARGET_URL=
- OAUTH_SAML_ISSUER=
- OAUTH_SAML_LABEL="Our SAML Provider"
- OAUTH_SAML_NAME_IDENTIFIER_FORMAT=urn:oasis:names:tc:SAML:2.0:nameid-format:transient
- OAUTH_SAML_GROUPS_ATTRIBUTE=
- OAUTH_SAML_EXTERNAL_GROUPS=
- OAUTH_SAML_ATTRIBUTE_STATEMENTS_EMAIL=
- OAUTH_SAML_ATTRIBUTE_STATEMENTS_NAME=
- OAUTH_SAML_ATTRIBUTE_STATEMENTS_USERNAME=
- OAUTH_SAML_ATTRIBUTE_STATEMENTS_FIRST_NAME=
- OAUTH_SAML_ATTRIBUTE_STATEMENTS_LAST_NAME=

- OAUTH_CROWD_SERVER_URL=
- OAUTH_CROWD_APP_NAME=
- OAUTH_CROWD_APP_PASSWORD=

- OAUTH_AUTH0_CLIENT_ID=
- OAUTH_AUTH0_CLIENT_SECRET=
- OAUTH_AUTH0_DOMAIN=
- OAUTH_AUTH0_SCOPE=

- OAUTH_AZURE_API_KEY=
- OAUTH_AZURE_API_SECRET=
- OAUTH_AZURE_TENANT_ID=
networks:
gitlab:
ipv4_address: 172.22.2.33

启动

1
docker-compose -f docker-compose-gitlab.yml -p gitlab up -d

访问:ip地址:3080

一进去需要修改管理员密码,管理员账号为 root 。

将语言调整为中文,网址:http://<GitLab服务器IP>/-/profile/preferences,在 Localization 一栏将 Language 修改为 Chinese, Simplified - 简体中文,保存修改后刷新页面即可显示中文。

具体 GitLab的使用请自行搜索相关文档。

点击查看

本文标题:docker-compose编排GitLab

文章作者:LiJing

发布时间:2023年02月27日 - 09:16:11

最后更新:2023年06月03日 - 10:00:59

原始链接:https://blog-next.xiaojingge.com/posts/1652105501.html

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

-------------------本文结束 感谢您的阅读-------------------