使用docker compose安装部署gitlab

安装gitlab

shell 复制代码
docker pull gitlab/gitlab-ce:latest

下载并安装 Docker Compose V2:

shell 复制代码
sudo curl -L "https://github.com/docker/compose/releases/download/v2.17.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

验证安装:

shell 复制代码
docker-compose --version

新建gitlab文件夹

shell 复制代码
mkdir gitlab

docker-compose.yml:

yml 复制代码
version: '3.6'
services:
  gitlab:
    image: gitlab/gitlab-ce:latest
    container_name: gitlab
    restart: always
    hostname: gitlab
    environment:
      GITLAB_OMNIBUS_CONFIG: |
        external_url 'http://IP地址:端口号'
        gitlab_rails['gitlab_shell_ssh_port'] = 2222
    ports:
      - "端口号:端口号" #这边两个端口号要一致!!!很重要
      - "4443:443"
      - "2222:22"
    volumes:
      - ./config:/etc/gitlab
      - ./logs:/var/log/gitlab
      - ./data:/var/opt/gitlab
    networks:
      - gitlab-net
networks:
  gitlab-net:
    driver: bridge

在gitlab目录下启动gitlab

shell 复制代码
docker-compose up -d 

修改gitlab内部配置

进入gitlab容器

shell 复制代码
vim /etc/gitlab/gitlab.rb
yml 复制代码
external_url "http://IP地址:端口号/"
nginx['listen_port'] = 端口号

启动

shell 复制代码
sudo gitlab-ctl reconfigure

配置域名

配置SSL证书

xxxxx.com域名

DNS解析

SSL证书解析

nginx

yml 复制代码
 server {
    	listen 443 ssl;
    	server_name xxxxx.com;
    	ssl_certificate xxxxx.com_bundle.crt;
		ssl_certificate_key xxxxx.com.key;

		location / {
        proxy_pass http://localhost:端口号;

        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
	}
}

最后等待gitlab容器完全启动,访问https://xxxxx.com就行了!

安装了四天,终于弄完了,特地写个笔记记录一下,防止下次再出问题。

相关推荐
%KT%15 分钟前
ubuntu系统部署docker
运维·docker·容器
十二同学啊42 分钟前
Docker 容器化技术详解:镜像、容器、网络与应用部署设计
网络·docker·eureka
I'mChloe1 小时前
不再逐台装Docker:我用Ansible Playbook批量统一服务器环境
服务器·docker·ansible
江湖有缘1 小时前
Docker实战 | 使用Docker部署Readeck书签管理工具
java·docker·eureka
十二同学啊2 小时前
Python FastAPI 项目使用 Docker 部署并映射端口(完整教程)
python·docker·fastapi
flytalei2 小时前
Kubernetes健康检查探针
云原生·容器·kubernetes
java_logo2 小时前
Docker 部署 Halo:轻松搭建开源个人博客
docker·容器·开源·博客·开源博客·halo·轩辕镜像
Linux实战笔记3 小时前
Docker多阶段构建优化生产配置手记:镜像瘦身最佳实践
ci/cd·docker·生产环境·多阶段构建·镜像瘦身
誰能久伴不乏3 小时前
QT工业上位机一次「指令静默丢失」的排查
qt·docker·github
TTATTC3 小时前
定时增量每 5 秒全表扫一遍?我用 DBSyncer 跑了三组对照实验才找到原因
docker·开源