Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >创建自己的https Gitlab 服务器

创建自己的https Gitlab 服务器

作者头像
为为为什么
发布于 2022-08-06 06:08:35
发布于 2022-08-06 06:08:35
1.9K00
代码可运行
举报
文章被收录于专栏:又见苍岚又见苍岚
运行总次数:0
代码可运行

GitLab是一个利用 Ruby on Rails 开发的开源应用程序,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。。

简介

GitLab是唯一一个以单个应用程序交付的 DevOps 平台,在全球各类分析报告中赢得关注,广泛覆盖。 GitLab是全球成千上万的社区贡献者协作的成果,集合了全球十万多家GitLab客户的真实反馈。 GitLab用户基于在现实中遇到的挑战,在社区贡献代码、文档、翻译、设计和产品创意,这使得GitLab解决方案在用途和价值上不断迭代。 GitLab 在 2011 年 10 月 8 进行了第一次代码提交,发展至今已经整整十年。

  • 为了搭建私有的 github 仓库,我们使用极狐(GitLab)创建服务

安装方法

GItLab 14.5
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
sudo apt-get update
sudo apt-get install -y curl openssh-server ca-certificates tzdata perl
  • 下载极狐GitLab 安装包。
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# Ubuntu 16.04
wget https://omnibus.gitlab.cn/ubuntu/xenial/gitlab-jh_14.5.1-jh.0_amd64.deb
# Ubuntu 18.04
wget https://omnibus.gitlab.cn/ubuntu/bionic/gitlab-jh_14.5.1-jh.0_amd64.deb
# Ubuntu 20.04
wget https://omnibus.gitlab.cn/ubuntu/focal/gitlab-jh_14.5.1-jh.0_amd64.deb

  • 建立自己域名的DNS解析,例如:我将 gitlab.zywvvd.com 二级域名解析腾讯云服务器IP
  • 并将该域名拟作为访问我们 gitlab 的域名
  • 创建环境变量
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
export EXTERNAL_URL=https://gitlab.zywvvd.com

不弄也没关系,之后也可以改

  • 对于 https 站点,极狐GitLab 将使用 Let’s Encrypt 自动请求 SSL 证书,这需要有效的主机名和入站 HTTP 访问。您也可以使用自己的证书或仅使用 http://(不带s)。
  • 如果您想为初始管理员用户(root)指定自定义密码,请查看文档。如果未指定密码,将自动生成随机密码。
  • 接着执行如下命令开始安装:
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
sudo dpkg -i gitlab-jh_14.5.1-jh.0_amd64.deb

GItLab 14.10(当前最新)
1. 安装和配置必须的依赖项
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
sudo apt-get update
sudo apt-get install -y curl openssh-server ca-certificates tzdata perl

(可选)下一步,安装 Postfix 以发送电子邮件通知。如果您想使用其他解决方案发送电子邮件,请跳过此步骤并在安装极狐GitLab 后配置外部 SMTP 服务器

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
sudo apt-get install -y postfix

在安装 Postfix 的过程中可能会出现一个配置界面,在该界面中选择“Internet Site”并按下回车。把“mail name”设置为您服务器的外部 DNS 域名并按下回车。如果还有其它配置界面出现,继续按下回车以接受默认配置。

2. 下载/安装极狐GitLab

配置极狐GitLab 软件源镜像。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
curl -fsSL https://packages.gitlab.cn/repository/raw/scripts/setup.sh | /bin/bash

接下来,安装极狐GitLab。确保您已正确设置您的 DNS,并更改 https://gitlab.example.com 为您要访问极狐GitLab 实例的 URL。安装包将在该 URL 上自动配置和启动极狐GitLab。

对于 https 站点,极狐GitLab 将使用 Let’s Encrypt 自动请求 SSL 证书,这需要有效的主机名和入站 HTTP 访问。您也可以使用自己的证书或仅使用 http://(不带s)。

如果您想为初始管理员用户(root)指定自定义密码,请查看文档。如果未指定密码,将自动生成随机密码。

执行如下命令开始安装:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
sudo EXTERNAL_URL="https://gitlab.example.com" apt-get install gitlab-jh

错误记录
  • 我在安装过程中报错:
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Checking if a newer PostgreSQL version is available and attempting automatic upgrade to it: NOT OK
Error ensuring PostgreSQL is updated. Please check the logs

  • 可以通过重新加载配置解决
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
gitlab-ctl reconfigure
gitlab-ctl status
gitlab-ctl restart

登录gitlab

  • 安装完成后可以使用我们的域名进行访问了,如果不行直接用IP也可以
  • 除非您在安装过程中指定了自定义密码,否则将随机生成一个密码并存储在 /etc/gitlab/initial_root_password 文件中(出于安全原因,24 小时后,此文件会被第一次 gitlab-ctl reconfigure 自动删除,因此若使用随机密码登录,建议安装成功初始登录成功之后,立即修改初始密码)。使用此密码和用户名 root 登录。
  • 登录后可以进行管理,建议先修改密码
  • 此时我们已经以管理员的身份登录到 gitlab 中,可以对仓库任何事情进行管理

启用https

如果在初次安装时一头雾水,那么安装成功后绑定的 https 域名为 gitlab.example.com,不会有人使用这个域名的,所以我们把他改成我们自己的域名,并实现https访问。

DNS 解析
  • 将自己的 IP 用一个二级域名解析过去

我之前已经将我的二级域名 gitlab.zywvvd.com 解析到服务器IP了,可以进行下一步

申请证书
  • 需要为此二级域名申请证书,可以在各家服务商申请免费证书
  • 申请后下载PEM_Nginx 证书并解压,得到 servername.crtservername.key 两个文件
  • 将他们放在 /etc/gitlab/ssl 目录下
配置 gitlab
  • gitlab 的核心配置文件为 /etc/gitlab/gitlab.rb
  • 修改访问链接(如果需要使用非默认 443 端口可以在此处加入):
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
external_url 'https://gitlab.zywvvd.com:6990'

  • 关闭Let’s Encrypt
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Letsencrypt['enable'] = false

  • 指定 ssl 证书位置
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
gitlab-ctl reconfigure

  • 重新加载配置即可
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
gitlab-ctl reconfigure

http 重定向
  • 默认情况下,当您指定以“https”开头的外部\u url时,NGINX将不再侦听端口80上未加密的HTTP流量。如果要将所有HTTP通信重定向到HTTPS,可以使用重定向到HTTPS设置。
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
nginx['redirect_http_to_https'] = true

测试

参考资料

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021年12月11日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
[Gitlab]自托管代码平台Gitlab | 搭建/使用教程
安装gitlab-ce(社区开源版本),下面my address改为为gitlab设置的url,比如(http://服务器外网地址或绑定的域名:端口)
夜梦星尘
2024/08/20
3350
Gitlab(2)- centos7.x 下安装社区版 Gitlab 以及它的配置管理
https://www.cnblogs.com/poloyy/category/1703784.html
小菠萝测试笔记
2021/09/14
3450
内网部署gitlab托管网站及绑定企业微信(采坑俩天)
一、部署gitlab代码托管网站 起因: 公司代码在远程虚拟机,提交不够规范,所以想起来搭建一个gitlab代码托管吧, 方便大佬们review代码和提交代码工作量等等,解决冲突等等,可视化操作。 二、部署步骤:ubuntu 1.部署命令: sudo apt-get update sudo apt-get install -y curl openssh-server ca-certificates sudo apt-get install -y postfix curl https://packag
懿曲折扇情
2022/08/24
1.6K0
内网部署gitlab托管网站及绑定企业微信(采坑俩天)
KVM虚拟机安装 GitLab EE
GitLab 是一个基于网页的软件开发生命周期管理工具,提供了 git 代码仓库、知识库、问题追踪、CI/CD 流水线功能,使用开源许可证,由 GitLab 公司开发(来自 WikiPedia)。
宋天伦
2020/07/16
8060
Debian 环境下安装配置 Gitlab
GitLab是一个利用Ruby on Rails开发的开源应用程序,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。 它拥有与GitHub类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。
Debian中国
2018/12/20
1.9K0
【Linux】搭建GitLab本地服务器
GitLab是一个基于Git仓库管理的Web平台,提供了一些用于软件开发的工具。它包含从项目计划到代码审查、测试和部署的所有功能。
DevFrank
2024/07/24
6630
【Linux】搭建GitLab本地服务器
Ubuntu19.1 中 GitLab 的安装配置与卸载
在我们自己安装GitLab之前,安装一些在安装过程中持续使用的软件非常重要。可以从Ubuntu的默认包存储库轻松安装所有必需的软件。
wsuo
2020/07/31
2.8K0
Ubuntu19.1 中 GitLab 的安装配置与卸载
Git和Github之Gitlab服务器搭建
安装说明:https://about.gitlab.com/installation/
yuanshuai
2022/08/22
6440
Git和Github之Gitlab服务器搭建
Jenkins+Ansible+GitLab持续交付平台搭建-第1篇
过程大概这这样的:Jenkins首先从Gitlab去抓取我们写好的具体产品的playbook, 并使用virtualenv下的Ansible相关命令, 保证我们在一个clean的环境下使用stable version去批量部署我们的产品到远程client。
Criss@陈磊
2019/10/22
1K0
Jenkins+Ansible+GitLab持续交付平台搭建-第1篇
Ubuntu16.04搭建GitLab服务器教程
如果成功运行, 在浏览器中输入http://127.0.0.1便可访问到GitLab界面. 首次使用时, GitLab会提示设置密码, 设置完成之后便可成功使用.
小一
2019/08/14
2.4K0
Ubuntu16.04搭建GitLab服务器教程
搭建Gitlab CI持续集成环境入门教程
yum install -y curl openssh-server openssh-clients postfix cronie policycoreutils-Python
星哥玩云
2022/07/14
8060
搭建Gitlab CI持续集成环境入门教程
GitLab的安装与部署
在 CentOS 7(和 RedHat/Oracle/Scientific Linux 7)上,下面的命令也会在系统防火墙中打开 HTTP、HTTPS 和 SSH 访问。这是一个可选步骤,如果您打算仅从本地网络访问 GitLab,则可以跳过它。
摘繁华
2021/12/27
8610
GitLab的安装与部署
手把手教你在centos7上安装GitLab服务器
GitLab:是一个基于Git实现的在线代码仓库托管软件,你可以用gitlab自己搭建一个类似于Github一样的系统,一般用于在企业、学校等内部网络搭建git私服。
lyb-geek
2019/07/31
4.9K0
【gitlab】gitlab快速部署教程
下载页面: https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu/pool/xenial/main/g/gitlab-ce/
HansBug
2018/10/25
2K0
试用 GitLab 14 以及中国发行版:极狐
时值 GitLab 14 大版本更新,官方对于这个版本给出了非常高的评价,让我非常好奇,所以为了探究新版本到底有哪些变化,我对 GitLab 社区版、极狐版做了试用对比。
soulteary
2021/07/08
1.5K1
试用 GitLab 14 以及中国发行版:极狐
如何在Ubuntu 16.04上安装和配置GitLab
GitLab CE或Community Edition是一个开源应用程序,主要用于托管Git存储库,还有其他与开发相关的功能,如问题跟踪。它旨在使用你自己的基础架构进行托管,并且可以灵活地部署为开发团队的内部存储库,公开作为与用户交互的方式,甚至可以作为贡献者托管自己项目的方式。
楠宝宝
2018/08/03
2.2K0
如何在Ubuntu 16.04上安装和配置GitLab
Linux学习14-CentOS安装gitlab环境
在学习Gitlab的环境搭建之前,首先需要了解Git,Gitlab,GitHub他们三者之间的关系
上海-悠悠
2019/05/06
1K0
Linux学习14-CentOS安装gitlab环境
CentOS7操作系统如何搭建GitLab
CentOS7搭建GitLab 环境要求:内存至少4G,GitLab是很耗内存滴 一、 安装并配置必要的依赖关系 在 CentOS 系统上,下面的命令将会打开系统防火墙 HTTP 和 SSH 的访问。 $ sudo yum install -y curl policycoreutils-python openssh-server $ sudo systemctl enable sshd $ sudo systemctl start sshd $ sudo firewall-cmd --permanent --add-service=http $ sudo systemctl reload firewalld 安装 Postfix ,用来发送邮件,在安装 Postfix 的过程中选择 'Internet Site'。 $ sudo yum install postfix $ sudo systemctl enable postfix $ sudo systemctl start postfix 也可以配置自定义的 SMTP 服务器。 二、 添加 GitLab 镜像仓库并安装 gitlab-ce 是社区版,免费 gitlab-ee 是企业版,收费 2.1 使用官方镜像安装 $ curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash $ sudo EXTERNAL_URL="http://gitlab.example.com" yum install -y gitlab-ce # 安装 GitLab 2.2 使用国内镜像安装(推荐) 如果提示连接超时,可以使用 清华大学开源软件镜像站:https://mirror.tuna.tsinghua....。 进入该网站后,有详细的安装步骤,跟着安装即可。 这里介绍一下在CentOS中使用 清华大学开源软件镜像站安装: 先还原yum源, 删掉gitlab-ce源 : $ ls -l /etc/yum.repos.d/ # 查看源配置项 $ mv /etc/yum.repos.d/gitlab_gitlab-ce.repo /etc/yum.repos.d/gitlab_gitlab-ce.repo.bak # 备份源配置项(也可以直接删除 rm) 新建 /etc/yum.repos.d/gitlab-ce.repo,内容为 [gitlab-ce] name=Gitlab CE Repository baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/ gpgcheck=0 enabled=1 再执行 $ sudo yum makecache $ sudo yum install gitlab-ce 安装完以后 /opt/gitlab/ 目录结构 /opt/gitlab/ ├── backups ├── git-data │ └── repositories │ └── root ├── gitlab-ci │ └── builds ├── gitlab-rails │ ├── etc │ ├── shared │ │ ├── artifacts │ │ ├── lfs-objects │ │ └── pages │ ├── sockets │ ├── tmp │ ├── upgrade-status │ ├── uploads │ └── working ├── gitlab-shell ├── gitlab-workhorse ├── logrotate │ └── logrotate.d ├── nginx │ ├── client_body_temp │ ├── conf │ ├── fastcgi_temp │ ├── logs -> /var/log/gitlab/nginx │ ├── proxy_cache │ ├── proxy_temp │ ├── scgi_temp │ └── uwsgi_temp ├── postgresql │ └──
用户4988376
2021/07/20
4330
【Gitlab】371- GitLab从安装到全自动化备份一条龙
1.在新服务器上安装并搭建好gitlab2.手动+自动将旧服务器上的gitlab备份3.手动+自动将gitlab备份包scp到新服务器上4.手动+自动恢复新服务器上的gitlab备份包5.在新旧服务器上自动删除过期备份包
pingan8787
2019/10/09
2.5K0
【Gitlab】371- GitLab从安装到全自动化备份一条龙
CentOS7.x 搭建 GitLab 教程
今天闲来无事,想起之前买了一个阿里云 ECS,一直闲置着没用,一时兴起就想搭个自己的 GitLab 玩玩,GitLab 官网也提供了安装教程,很简单,照着步骤一步步基本没什么问题,可能安装的过程中有一些坑需要自己去解决。
程序员飞飞
2020/02/27
1.8K0
CentOS7.x 搭建 GitLab 教程
相关推荐
[Gitlab]自托管代码平台Gitlab | 搭建/使用教程
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验