首页 > 其他分享 >Docker-Compose部署Gitlab以及Gitlab配置SMTP邮件服务

Docker-Compose部署Gitlab以及Gitlab配置SMTP邮件服务

时间:2023-11-30 15:12:41浏览次数:49  
标签:Compose ## smtp gitlab SMTP Gitlab rails docker com

使用Docker-Compose部署Gitlab

拉取镜像

地址: https://hub.docker.com/r/gitlab/gitlab-ce/tags

拉取到镜像后,使用docker tag修改镜像,docker push推送到自己的镜像仓库(内网部署)

编写docker-compose文件

##创建容器挂载出来的文件夹
mkdir /gitlab && cd /gitlab
mkdir -p data/{log,opt,etc}
version: '3'

services:
  gitlab:
  ##image需要替换为自己镜像仓库的gitlab-ce地址
    image: dbatest1.ip.tp-link.com:9002/gitlab-ce:latest 
    volumes:
       - /gitlab/data/log:/var/log/gitlab
       - /gitlab/data/opt:/var/opt/gitlab
       - /gitlab/data/etc:/etc/gitlab
    ports:
       - "80:80" ##UI管理界面地址映射
       - "9009:22" ##ssh协议端口地址映射
编写一个Makefile文件
NAME = gitlab

deploy:
        docker stack deploy --with-registry-auth --resolve-image always -c docker-compose.yml $(NAME)

修改ssh与域名配置

ps:如果这里不做修改,那么在Gitlab里展示出来的仓库地址都是错误的,是拉取不下来的!以及smtp服务里自动发送的邮件链接里的地址都是容器的地址,点击了根本访问不到!

使用make deploy运行gitlab服务后
去Gitlba服务挂载的文件夹下修改相关配置 /gitlab/data/etc/gitlab.rb
修改以下几行
##这个需要修改为虚拟机上对外开放的ssh端口
gitlab_rails['gitlab_shell_ssh_port'] = 9009 
##这个需要修改为gitlab所在虚拟机的域名(如果是固定在单节点就这样写,容器自由编排就不能这么写)
gitlab_rails['gitlab_ssh_host'] = 'dbatest1.ip.tp-link.com'
##这个和上一个一样,需要修改为虚拟机域名以及UI界面访问的端口,默认是80,不同则需修改
external_url 'http://dbatest1.ip.tp-link.com'

修改完后重启服务
docker service update --force gitlab_gitlab

增加SMTP邮件服务

如果想要邮件来通知管理员以及使用者各种更新,需要配置SMTP参数

去Gitlba服务挂载的文件夹下修改相关配置 /gitlab/data/etc/gitlab.rb
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "mail.tp-link.com.hk" ##邮件服务器地址
gitlab_rails['smtp_port'] = 587			##端口
gitlab_rails['smtp_user_name'] = "[email protected]"  ##发送邮件的邮箱
gitlab_rails['smtp_password'] = "xxxxxxxxxxx"           ##密码
gitlab_rails['smtp_domain'] = "mail.tp-link.com.hk"		##邮件服务器地址
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = false
gitlab_rails['smtp_pool'] = false

gitlab_rails['gitlab_email_from'] = '[email protected]' ##发送邮件的邮箱

修改完后重启服务
docker service update --force gitlab_gitlab

标签:Compose,##,smtp,gitlab,SMTP,Gitlab,rails,docker,com
From: https://www.cnblogs.com/iamxiaofu/p/17867243.html

相关文章

  • 搭建GitLab的cicd流水线
    大致内容如下通过部署一个简单的项目到gitlabpages初步了解gitlabCI/CD了解gitlabCI/CD基础概念、运行机制等使用gitlab自带runner进行自动化部署、使用ssh命令操作部署远程服务器在自己服务器安装gitlabrunner进行自动化部署两种runner部署耗时对比......
  • docker-compose.yml
    定义和配置三个服务:minio、mysql和generator//指定docker-compose的版本version:'3'services:minio:image:minio/minio:latest //定义minio镜像ports:-9000:9000 //映射端口environment: //设置环境-MINIO_ROOT_USER=minioadmin......
  • Compose
    DockerCompose通过一个单独的docker-compose.yml模板文件(yaml格式)来定义一组相关联的应用容器,帮助我们实现多个相互关联的Docker容器的快速部署 ......
  • 九、安装Docker Compose 编排工具
    根据前面所学的知识可知,想要使用Docker部署应用,就要先在应用中编写Dockerfile文件来构建镜像。同样,在微服务项目中,我们也需要为每一个服务编写Dockerfile文件来构建镜像。构建完成后,就可以根据每一个镜像使用dockerrun或者dockerservicecreate命令创建并启动容器,这样我们就可......
  • 极狐GitLab—新一代源代码管理仓库
    产品概述    极狐GitLab是一款具有软件开发全生命周期的DevOps能力的新一代源代码管理仓库,无缝集成代码托管、敏捷管理、CI/CD,从需求管理到应用上线能够形成数据的完整串联。极狐GitLab具有高可用可扩展的架构特点,可提供万人规模的架构行业实践参考和专业服务支持;提供专业......
  • kafka docker-compose 单节点部署
    启动脚本sed-i-r"s/[0-9]{1,3}(\.[0-9]{1,3}){3}/$(ifconfig$(iprouteshowdefault|head-1|awk'{print$5}')|grep-oP'(?<=inet\s)\d+(\.\d+){3}')/g"docker-compose.ymldocker-composeup-ddocker-compose.ymlversion......
  • Android Compose 的分页(Paging3)
    Overview官方链接:https://developer.android.com/topic/libraries/architecture/paging/v3-overview需要注意的是,Paging库的组件在应用程序的三层中运行,Paging在三层的架构如下图:存储库层ViewModel层用户界面层在三层的数据传递如下图:方法/接口官方链接:https://dev......
  • gitlab推送新项目到新分支
    thefirststep: initgitrepositorygitinit gitadd.gitcommit-m"init"thesecondstep: addremoterepositorygitremoteaddorigin [email protected]:dpg/ui.git//urlthethirdstep:createnewbranchandswitchto gitcheckout-bal......
  • docker-compose种不通的服务之间的访问问题,夸容器访问
    背景我们知道对于docker的每个容器都是独立的,想要夸容器访问的话,不能用127.0.0.1加端口号去访问,所以需要docker虚拟网卡的网关分配的地址去访问,可以通过dockerinspect对每个容器的局域网ip进行查看,但是这样比较麻烦,所以有一个新的解决办法,就是通过docker-compose配置文件的方......
  • DockerCompose修改某个服务的配置(添加或编辑端口号映射后如何重启单个服务使其生效)
    场景docker-compose入门以及部署SpringBoot+Vue+Redis+Mysql(前后端分离项目)以若依前后端分离版为例:https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/128372122上面讲了dockercompose的应用示例,如果需要修改某个服务的配置文件,比如需要给其中一个java服务添加一......