首页 > 其他分享 >docker compose部署gitlab

docker compose部署gitlab

时间:2023-10-19 15:44:48浏览次数:43  
标签:compose gitlab smtp rails version docker

这里部署的是目前最新的16.4.1版本

docker版本

Client: Docker Engine - Community
 Version:           24.0.6
 API version:       1.43
 Go version:        go1.20.7
 Git commit:        ed223bc
 Built:             Mon Sep  4 12:31:44 2023
 OS/Arch:           linux/amd64
 Context:           default

Server: Docker Engine - Community
 Engine:
  Version:          24.0.6
  API version:      1.43 (minimum version 1.12)
  Go version:       go1.20.7
  Git commit:       1a79695
  Built:            Mon Sep  4 12:31:44 2023
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.6.24
  GitCommit:        61f9fd88f79f081d64d6fa3bb1a0dc71ec870523
 runc:
  Version:          1.1.9
  GitCommit:        v1.1.9-0-gccaecfc
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

docker compose版本

docker compose version
Docker Compose version v2.21.0

因为现在docker compose工具已经合并到docker客户端中来了,所以不用单独安装docker compose工具

docker-compose.yaml文件

version: '3.6'
services:
  web:
    image: 'registry.gitlab.cn/omnibus/gitlab-jh:latest'
    restart: always
    hostname: 'gitlab.example.com'
    container_name: gitlab
    environment:
      GITLAB_OMNIBUS_CONFIG: |
        # gitlab.rb的其他配置项都可以加在这个地方 每个参数一行
        external_url 'http://192.168.140.80:12345'  #ip和端口都是宿主机的ip端口
        gitlab_rails['gitlab_shell_ssh_port'] = 22
        gitlab_rails['smtp_enable'] = true
        gitlab_rails['smtp_address'] = "smtp.163.com"
        gitlab_rails['smtp_port'] = 465
        gitlab_rails['smtp_user_name'] = "xxxxxxxxxxxxx@163.com"
        gitlab_rails['smtp_password'] = "xxxxxxxxxxxxxxx"  #授权码
        gitlab_rails['smtp_domain'] = "163.com"
        gitlab_rails['smtp_authentication'] = "login"
        gitlab_rails['smtp_tls'] = true
        gitlab_rails['smtp_openssl_verify_mode'] = 'none'
        gitlab_rails['gitlab_email_enabled'] = true
        gitlab_rails['gitlab_email_from'] = 'xxxxxxxxxxxxxx@163.com' #发送邮件的邮箱
        gitlab_rails['gitlab_email_display_name'] = 'gitAdmin'  #邮件显示的名字
        gitlab_rails['gitlab_email_reply_to'] = 'xxxxxxxxxx@163.com'  #回复邮件的邮箱
        gitlab_rails['gitlab_ssh_host'] = '192.168.140.80' #宿主机的ip
    ports:
      # 这个端口是web的端口,务必保证容器和宿主机的端口一致
      - '12345:12345'
      # 这个是使用ssh拉取上传的端口,需要对外开放的
      - '22:22'
    volumes:
      - './config:/etc/gitlab'
      - './logs:/var/log/gitlab'
      - './data:/var/opt/gitlab'
    shm_size: '4g'
    ulimits:
      nproc: 65535
      nofile:
        soft: 20000
        hard: 40000

gitlab是非常吃内存的,所以宿主机需要内存高点,我这里给的是16G内存

这里的镜像是国内版本极狐的版本,也可以使用官方社区版本 CE版本,docker compose文件的差别不大

参考地址 https://docs.gitlab.cn/jh/install/docker.html#使用-docker-compose-安装极狐gitlab

标签:compose,gitlab,smtp,rails,version,docker
From: https://www.cnblogs.com/guangdelw/p/17774854.html

相关文章

  • docker 挂载redis
    一、Dockerpullredis镜像二、挂载redisdockerrun--restart=always--log-optmax-size=100m--log-optmax-file=2-p6379:6379--namemyredis01-v/home/redis/myredis01/myredis.conf:/etc/redis/redis.conf-v/home/redis/myredis01/data:/data-dredisredis-ser......
  • docker-compose搭建多主机分布式minio
    minio介绍Minio是个基于Golang编写的开源对象存储套件,虽然轻量,却拥有着不错的性能。官网地址:MinIO|HighPerformance,KubernetesNativeObjectStorage何为对象存储?我们来看下阿里云OSS(ObjectStorageService)的介绍:对象存储服务(ObjectStorageService,OSS)是一种海量......
  • Linux的Namespace,cgroup,chroot和docker的本质
    Linux的Namespace,cgroup,chroot和docker的本质-陈映峤的博客|LerkoBlog(chenyingqiao.github.io)chroot,即changerootdirectory(更改root目录)。在linux系统中,系统默认的目录结构都是以 /,即是以根(root)开始的。而在使用chroot之后,系统的目录结构将以指定的位......
  • NeuVector 基于 Docker 部署
    1、Docker、Docker-Compose安装https://www.cnblogs.com/a120608yby/p/9883175.htmlhttps://www.cnblogs.com/a120608yby/p/14582853.html2、基于Docker-Compose部署NeuVector#vimdocker-compose.ymlversion:"3.8"services:allinone:pid:hostima......
  • 如何在 Ubuntu上使用snap安装Docker
    1检查系统版本具有sudo或root用户权限2安装SNAPctrl+alt+T打开终端运行以下命令以安装SNAPsudoaptupdatesudoaptinstallsnapd安装完成后,可以运行以下命令来验证SNAP是否正确安装snapversion3安装Docker在终端中,运行以下命令以使用SNAP安装Do......
  • 【靶场部署】docker搭建sqli-labs
    1、声明本文所介绍的内容仅用于学习和交流,严禁利用文中技术进行非法行为。由于传播、利用本文所提供的信息和技术而造成的任何直接或者间接的后果及损失,均由使用者本人负责,文章作者不为此承担任何责任。2、sqli-labs介绍sqli-labs是一个开源且非常有学习价值的SQL注入靶场,基本......
  • 谷歌使用Jetpack Compose逐步重写Android 14,不会你还不知道吧?
    前言早在2019年,谷歌就推出了JetpackCompose,这是一种使用Kotlin开发原生安卓应用的编写方式,抛弃了常规基于XML的视图来设计应用UI,而是让开发者以声明方式创建设计。从那时起,谷歌就大力鼓励开发者在安卓应用中使用JetpackCompose,还使用JetpackCompose重构了其PlaySto......
  • docker入门加实战—部署Java和前端项目
    docker入门加实战—部署Java和前端项目部署之前,先删除nginx,和自己创建的dd两个容器:dockerrm-fnginxdd部署Java项目作为演示,我们的Java项目比较简单,提供了一个接口:配置文件连接docker里的mysql:打包如下:DockerFIle文件如下:#基础镜像FROMopenjdk:11.0-jre-buster......
  • 2023跟我一起成为docker大牛:swarm 教程:部署篇「上」
    2023跟我一起成为docker大牛:swarm教程:部署篇「上」Swarm模式是用于管理一组Docker守护程序的高级功能。ip规划:Manager:Manager:172.16.95.137Node1:172.16.95.138Node2:172.16.95.1391、manager节点初始化swarmdockerswarminit--advertise-addr172.16.95.137输出:docker......
  • WinSCP 脚本实现将 jar 包一键上传 Ubuntu 并 docker 部署
    准备首先,在Ubuntu写一个.sh脚本用于自动更新jar包的docker容器和镜像,然后在Windows写一个.bat脚本用于上传jar包并运行.sh脚本。deploy.sh#Kill容器dockerkilldemo#删除容器dockerrmdemo#删除镜像dockerrmimy/demo#构建镜像dockerbuild-t......