3.1-gitlab
Create by fall on 07 Feb 2025 Recently revised in 08 Feb 2025
部署私有 gitlab 指南
安装前提
- 非 docker for windows 的 docker 安装(有一些已知的兼容问题)
- 你必须拥有一个邮件传输代理,例如
Postfix
或者Sendmail
- 不能在 k8s 上部署
gitlab
,将会导致单点故障 - 对于你的 docker,你必须拥有一个有效的,外部可访问的主机名,不要使用
localhost
。
启动 docker
# 创建文件夹
mkdir ~/gitlab-service
# 命名变量为当前路径
export GITLAB_HOME=~/gitlab-service
# 将下面的文件 docker-compose.yml 复制到该路径下面
docker compose up -d
# 该容器使用 72** 端口
name: my-gitlab
version: '0.3'
services:
gitlab:
image: gitlab/gitlab-ce:16.11.10-ce.0 # 镜像名称以及版本
restart: unless-stopped
container_name: gitlab-service # 容器名称
hostname: 'gitlab.example.com'
environment:
GITLAB_OMNIBUS_CONFIG: |
# Add any other gitlab.rb configuration here, each on its own line
external_url 'https://gitlab.example.com'
# 指定挂载目录
volumes:
- "$GITLAB_HOME/config:/etc/gitlab"
- "$GITLAB_HOME/logs:/var/log/gitlab"
- "$GITLAB_HOME/data:/var/opt/gitlab"
ports:
- "4022:22" # 本地端口号与容器内部端口号
- "4080:80" # 本地端口号与容器内部端口号
- "4443:443" # 本地端口号与容器内部端口号
shm_size: '256m'
docker exec -it gitlab-service grep 'Password:' /etc/gitlab/initial_root_password
# 会收到 root 用户的密码,类似于下面的字符串
# Xrpm5QnZ3yb1ZOWM0WZB3G3ooEVOidQoi8vEMfso7yc=
可选配置
- 配置文件所在位置
/etc/gitlab/gitlab.rb
sudo docker exec -it gitlab editor /etc/gitlab/gitlab.rb
external_url
配置你的 github 网络路径- SMTP 配置可以接收 email
- 可以开启 HTTPS
之后可以重启容器 docker restart gitlab
FAQ
Docker daemon 没有运行怎么办
docker daemon,docker 的守护进程,可以 通过 dockerd -v 查看安装
windows 系统中,可以运行 docker desktop,然后 wsl 的 docker 可以找到 docker daemon 为 server
启动 docker daemon 时,要关闭 docker