离线部署GitLab
一、背景
公司是局域网开发环境,资源文件用svn管理,代码用git管理。
GitLab有点大,而且只能在Linux下使用,所以选择了轻巧的GitBlit。
后来GitBlit被暴漏洞,不让用,无奈只好再次选择GitLab。
二、调研
我们服务器是Windows系统,原准备用Docker,没弄明白,安装在Windows上跑不起来。于是改用虚拟机里装个Linux系统,再安装GitLab。
三、实操
1、GitLab离线包下载地址:
https://packages.gitlab.com/gitlab/gitlab-ce
注意要选相应系统版本和cpu架构的安装包。
2、虚拟机
下载了ubuntu server安装上,只有命令行,连查看ip都不行,更不要说将gitlab安装包复制进系统了。公司有kylin系统,于是直接用的kylin。
安装命令:
sudo dpkg -i gitlab-ce_14.9.3-ce.0_amd64.deb
结果如下:
3、配置
修改下面的文件
sudo vi /etc/gitlab/gitlab.rb
external_url 'http://xx.xx.xx.xx:9999' #根据自己情况修改
这里的IP地址,会体现在创建项目的ssh地址上。
Puma默认端口8080是注释掉的,这个端口不能跟external_url中的端口一样了,不然端口就冲突了。我调了一天的502,就是这个原因,我以为这俩得是一个端口。
################################################################################
## GitLab Puma
##! Tweak puma settings.
##! Docs: https://docs.gitlab.com/ee/administration/operations/puma.html
################################################################################# puma['enable'] = false
# puma['worker_timeout'] = 60
...### Advanced settings
# puma['listen'] = '127.0.0.1'
# puma['port'] = 8080
...
即上面这段配置不需要修改!!
gitlab.rb配置文件中,只修改external_url即可。
注:有文章说Unicorn的端口与external_url中的一样,我不确定。我用的Puma,可能不一样。
4、配置生效
sudo gitlab-ctl reconfigure
结果如下:
5、初始密码
初始密码保存地址:/etc/gitlab/initial_root_password
执行完上面的命令会有提示,如下:
...
Notes:
Default admin account has been configured with following details:
Username: root
Password: You didn't opt-in to print initial root password to STDOUT.
Password stored to /etc/gitlab/initial_root_password. This file will be cleaned up in first reconfigure run after 24 hours.NOTE: Because these credentials might be present in your log files in plain text, it is highly recommended to reset the password following https://docs.gitlab.com/ee/security/reset_user_password.html#reset-your-password.gitlab Reconfigured!
6、开启防火墙并放行端口(局域网可以不开启)
sudo ufw status # 1. 查看ufw的状态
sudo ufw enable # 2. 开启ufw
sudo ufw reload # 3. 重启防火墙ufw
sudo ufw allow 9999 # 4. 对外开启9999端口
sudo ufw status # 再查看开启端口状态
四、其他有用的命令
1、查看服务状态
sudo gitlab-ctl status
2、检查
sudo gitlab-rake gitlab:check
3、查看日志
sudo gitlab-ctl tail
4、重启
sudo gitlab-ctl restart
五、错误的操作
1、修改confiy.yml文件
该文件路径:/opt/gitlab/embedded/service/gitlab-shell/config.yml
config.yml提示,这个文件由gitlab-ctl管理,手工修改会被擦除,只能修改/etc/gitlab/gitlab.rb文件。如下:
# This file is managed by gitlab-ctl. Manual changes will be
# erased! Tochange the contents below, edit /etc/gitlab/gitlab.rb
# and run `sudo gitlab-ctl reconfigure`....
2、修改gitlab-http.conf
文件地址:/var/opt/gitlab/nginx/conf/gitlab-http.conf
gitlab-http.conf提示,这个文件由gitlab-ctl管理,手工修改会被擦除,只能修改/etc/gitlab/gitlab.rb文件。如下:
# This file is managed by gitlab-ctl. Manual changes will be
# erased! Tochange the contents below, edit /etc/gitlab/gitlab.rb
# and run `sudo gitlab-ctl reconfigure`....
参考文章:
如何搭建gitlab服务器——使用离线安装包部署 - 知乎
GitLab配置说明
GitLab初次安装后,登录GitLab网页的管理员账号和密码各是什么?_暗诺星刻的博客-CSDN博客_gitlab管理员账号
离线部署GitLab相关推荐
- centos离线部署gitlab
centos离线部署gitlab 有的时候因为工作环境需要,不能够连接互联网.而我们工作时又需要使用git进行合作开发,这时就需要在内网部署一个git服务端. 1.下载依赖软件包 yum instal ...
- RHEL7/CentOS7在线和离线安装GitLab配置使用实践
前言 GitLab Community Edition 新版本已经集成了CI/CD的支持,从某种程度上来说可以告别对于Jenkins的依赖,我本来计划是写基于Docker部署GitLab但感觉还是有点 ...
- Linux centos7 docker部署gitlab私有服务器
Docker部署gitlab私有服务器,那么,这里必须要有两个软件啦,一个是Docker,一个是gitlab.鉴于很多同学还是不太了解这两个东西,并且观看了不少的其他大神的相关博客,发现对于Docke ...
- 【内网福音】如何离线部署Rancher
2019独角兽企业重金招聘Python工程师标准>>> 对于在公司内网环境中.无法访问互联网的用户而言,离线安装部署Rancher是解决问题的关键.本文是Rancher离线部署教程, ...
- Python 进阶 — 创建本地 PyPI 仓库与 Python 程序的离线部署
目录 文章目录 目录 创建本地 PyPI 仓库 安装 pypiserver 上传 Python 安装包 使用私有 PyPI 仓库 Python 程序的离线部署 pip download 获取必须的 P ...
- EdgeGallery — AIO 离线部署 v1.5 版本
目录 文章目录 目录 前言 资源配置 软件版本 Pre Installation 安装配置文件解析 hosts-aio var.yml password-var.yml Installation Po ...
- 从零开始一步一步搭建Ubuntu Server服务器、修改数据源、安装Docker、配置镜像加速器、Compose部署Gitlab服务
场景 最终目的是使用Docker Compose部署一个Gitlab服务. 效果 注: 博客: https://blog.csdn.net/badao_liumang_qizhi 关注公众号 霸道的程 ...
- mac 上搭建gitlabel_在Mac OS X中用Docker部署GitLab
以前采用gitosis在Mac OS上架设Git服务器,用于集中管理课题组中的所有Git仓库.Gitosis 是一套用来管理 authorized_keys文件和实现简单连接限制的脚本,用来添加用户和 ...
- Node服务一键离线部署
背景说明 项目测试通过,到了上线部署阶段.部署的机器安全限制比较严格,不允许访问外网.此外,没有对外网开放ssh服务,无法通过ssh远程操作. 针对上面提到的两条限制条件,通过下面方式解决: 无法访问 ...
- CentOS系统自动下载RPM包及其所有依赖的包(离线部署)
前几天我尝试去创建一个仅包含我们经常在 CentOS 7 下使用的软件的本地仓库.当然,我们可以使用 curl 或者 wget 下载任何软件包,然而这些命令并不能下载要求的依赖软件包.你必须去花一些时 ...
最新文章
- 商汤科技举办病理、放疗两大MICCAI国际挑战赛,推动AI医疗落地
- GEB:中科院南土所梁玉婷组-大陆尺度下稻田土壤微生物β多样性的纬度分布特征...
- XamarinSQLite教程在Xamarin.Android项目中提取数据库文件
- 拦截推送信息_Android10.0公测版H2OS For OnePlus 6T第1版已推送更新
- Linux Priority VS Nice
- Deepin下配置JDK8
- 是否可能有一台算力无穷大的计算机?
- 字符串长度(PHP学习)
- 2019年下半年《软件评测师》上午试卷及答案
- multisim高频小信号放大器_什么是放大器及其用处_光纤传感器_传感器
- Linux多线程工作笔记0005---Linux多线程基础_创建线程pthread_create_线程等待_线程终止
- 没有别家钱多,没有别家人多,小型培训机构招生怎么做?
- 资源编译器 rc .exe 的参数
- PMP扫盲篇2 | PMP报名、缴费、考试那些事儿~~
- 免费下载380套大型商业源码
- 正交性原理与维纳霍夫(正则)方程
- 基于stm32及sim800c sim868 实现的远程控制 小程序控制模块 源码 移植过程简介
- 数字化转型的衡量指标
- Sass Module 介绍
- 阿里巴巴字体库使用方法
热门文章
- 微软新的邮件帐户域名 @live.com和@windowslive.com
- APP支付(微信、支付宝)
- 淘宝七天自动确认收货,怎么设计?RabbitMQ延迟队列,消息延迟推送delayed_message入门教程!
- 【职业规划】该如何选择职业方向?性能?自动化?测开?学习选择python、java?
- 小程序Progress组件介绍
- someone you loved 歌词翻译
- 4月6日——4月10日课程表
- python画圣诞帽_用Python就可以给你的头像戴上圣诞帽,别@微信团队了!
- 视频添加背景音乐ffmpeg(十八)
- 计算机屏幕出现条纹w7,电脑重装win7后屏幕出现条纹怎么办