docker compose部署配置gitlab
时间: 2025-04-18 21:41:30 浏览: 29
### 使用 Docker Compose 部署和配置 GitLab 最佳实践
#### 创建必要的目录结构
为了确保数据持久化以及便于管理,建议先创建所需的挂载目录。这些目录将用于存储 GitLab 数据库、日志和其他重要文件。
```bash
mkdir -p /srv/gitlab/{config,data,logs}
```
此命令会在 `/srv/gitlab` 下建立三个子目录 `config`, `data`, 和 `logs`[^2]。
#### 获取官方镜像并编写 docker-compose.yml 文件
接下来,在项目的根目录下创建名为 `docker-compose.yml` 的文件,并按照如下模板编辑:
```yaml
version: '3'
services:
web:
image: 'gitlab/gitlab-ce:latest'
restart: always
hostname: 'gitlab.example.com' # 替换成实际域名
environment:
GITLAB_OMNIBUS_CONFIG: |
external_url 'http://gitlab.example.com'
gitlab_rails['time_zone'] = 'Asia/Shanghai'
ports:
- '80:80'
- '443:443'
- '22:22'
volumes:
- '/srv/gitlab/config:/etc/gitlab'
- '/srv/gitlab/logs:/var/log/gitlab'
- '/srv/gitlab/data:/var/opt/gitlab'
runner:
image: 'gitlab/gitlab-runner:alpine-v14.7.0'
depends_on:
- web
volumes:
- '/srv/gitlab/config:/etc/gitlab-runner'
- '/var/run/docker.sock:/var/run/docker.sock'
```
上述配置中包含了两个主要的服务:一个是作为核心组件的 Web 服务 (`web`);另一个则是 CI/CD 流水线中的执行器(`runner`)。注意替换其中的主机名部分以匹配实际情况[^1]。
#### 启动服务
完成以上准备工作之后,可以通过下面这条简单的指令来启动所有的容器和服务:
```bash
docker-compose up -d
```
这将会以后台模式启动所有定义好的服务实例。首次启动时可能会花费一些时间等待拉取最新的镜像资源[^3]。
#### 访问 GitLab 平台
一旦部署成功,就可以通过预先设定的 URL 地址访问新搭建起来的 GitLab 实例了。默认情况下,第一次登录会提示设置管理员账户密码,请妥善保管好该信息以便后续操作使用[^4]。
#### SSL 设置 (可选)
如果希望启用 HTTPS 协议,则需进一步调整 Nginx 反向代理的相关参数。具体做法是在原有基础上增加一段针对 SSL/TLS 加密传输的支持代码片段[^5]:
```nginx
server {
listen 443 ssl;
server_name gitlab.example.com;
ssl_certificate /path/to/cert.pem;
ssl_certificate_key /path/to/key.pem;
location / {
proxy_pass http://localhost:80;
...
}
}
```
请记得更新路径指向正确的证书位置,并重启相关服务使更改生效。
阅读全文
相关推荐














