使用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就行了!

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

相关推荐
为什么不问问神奇的海螺呢丶41 分钟前
n9e categraf docker 监控配置
运维·docker·容器
青树寒鸦42 分钟前
wsl的docker备份mongo和迁移
运维·mongodb·docker·容器
爱宇阳3 小时前
WSL2 完整开发环境配置指南
容器
hopsky3 小时前
Docker Desktop 报 500
运维·docker·容器
曦云沐3 小时前
一键部署ROS2开发环境!Docker run命令详解与实战
docker·容器·ros2
为什么不问问神奇的海螺呢丶3 小时前
n9e categraf k8s监控配置 -cadvisor
云原生·容器·kubernetes
H Journey3 小时前
Docker swarm 集群搭建实战
运维·docker·容器
炸裂狸花猫3 小时前
开源域名代理与流量限制方案 - Cloudflare + Ingress + 自签名证书
运维·云原生·容器·kubernetes·cloudflare·waf·免费域名证书
江湖有缘4 小时前
Docker环境下使用RustScan端口扫描工具教程
运维·docker·容器
70asunflower4 小时前
镜像仓库(Image Registries)详解
linux·docker·容器