Centos使用Docker搭建自己的Gitlab(社区版和设置汉化、修改密码、设置SSH秘钥)

根据我的经验 部署Gitlab(社区版) 至少需要2核4g的服务器 带宽3~4M

1. 在自己电脑上安装终端:宝塔ssl终端 或者 FinalShell,根据喜好安装即可

http://www.hostbuf.com/t/988.html
http://www.hostbuf.com/downloads/finalshell_windows_x64.exe
(1)安装好后连接SSL
在这里插入图片描述
在这里插入图片描述

2. 服务器(我的是香草云2核4G,大家可以随意):Centos7.9

(1)安装基础环境
sudo yum update -y (centos7.9更新)
sudo yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make zlib zlib-devel libffi-devel firewalld nano -y

3. 安装Docker

(1)下载docker.sh脚本: curl -fsSL https://get.docker.com -o get-docker.sh
(2)检查docker是否下载成功 ls
在这里插入图片描述
(3)安装docker(5分钟或者更长):sh get-docker.sh
(4)启动Docker: systemctl start docker
(5)检查Docker运行状态(下图说明docker已经运行): systemctl status docker

可以同时执行 执行 1~5
curl -fsSL https://get.docker.com -o get-docker.sh && sh get-docker.sh && systemctl start docker && systemctl status docker

在这里插入图片描述
(6)设置Docker随系统启动: sudo systemctl enable docker

4. 执行GitLab Docker镜像

(1)配置Centos环境变量 export GITLAB_HOME=/srv/gitlab
(2)将以下这段代码填好指定的ip后复制到服务器终端上

社区版

sudo docker run --detach \
  --hostname 1.2.3.4 \
  --publish 8443:443 --publish 8080:80 --publish 8822:22 \
  --name gitlab \
  --restart always \
  --volume $GITLAB_HOME/config:/etc/gitlab \
  --volume $GITLAB_HOME/logs:/var/log/gitlab \
  --volume $GITLAB_HOME/data:/var/opt/gitlab \
  --shm-size 256m \
  gitlab/gitlab-ce:latest

其中:
1.2.3.4 要换成你的服务器IP地址
--publish 8443:443 --publish 8080:80 --publish 2222:22 \

格式为外部端口:容器内部端口 8080、2222端口可以随意替换。
8080:80表示将主机的8080端口映射到容器的80端口(GitLab的Web服务)。
2222:22表示将主机的2222端口映射到容器的22端口(GitLab的SSH服务)。
8443:443保持不变,因为它是HTTPS服务的标准端口。
记得在服务器安全组中开启 8080、80、22、2222、8443、443端口
在这里插入图片描述

(3)查看 gitlab是否正在运行(刚部署完可能需要等一会,因为gitlab比较大,需要配置各种数据,): docker ps

starting 还需要再等一会
在这里插入图片描述
如果出现下图则可以执行第6步(我花了10分钟左右)
在这里插入图片描述

(4)检查gitlab版本:docker exec -it gitlab gitlab-rake gitlab:env:info
在这里插入图片描述

(5)使用浏览器打开你的极狐Gitlab http://1.2.3.4:8080 1.2.3.4换成你的服务器ip
在这里插入图片描述
(6)查看初始管理员 root 的密码 docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password
在这里插入图片描述

(7)设置汉化:
在这里插入图片描述
在这里插入图片描述
(8)记得修改root 密码
在这里插入图片描述
(9)生成SSH秘钥
(9.1)ssh-keygen -t rsa -b 4096 -C "你的邮箱" 然后可以一直回车
(9.2)确保 ssh-agent 正在运行: eval "$(ssh-agent -s)"
(9.3)将 SSH 私钥添加到 ssh-agent:ssh-add ~/.ssh/id_rsa
(9.4)复制 SSH 公钥到剪贴板:cat ~/.ssh/id_rsa.pub
在这里插入图片描述
(10)进入后会发现拉取代码的命令并不是 8080端口 而是默认的80端口 接下来要修改一下gitlab配置

我配置完以下内容发现gitlab页面打不开了 正在解决中!!!

在这里插入图片描述
(10.1)进入 GitLab 容器: sudo docker exec -it gitlab /bin/bash
(10.2)编辑gitlab.rb 并保存: vi /etc/gitlab/gitlab.rb
在这里插入图片描述
(10.3)重新配置 GitLab: gitlab-ctl reconfigure在这里插入图片描述

(10.4)重启 GitLab: gitlab-ctl restart
在这里插入图片描述
(10.5)退出docker config exit

祝大家学习和工作愉快!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/337309.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

macOS磁盘管理工具Paragon Hard Disk Manager,轻松且安全的改变磁盘分区

Paragon Hard Disk Manager mac版是Macos上一款磁盘管理工具,可以帮助你轻松而且安全的随意改变磁盘分区的大小和各种分区参数,作为mac磁盘分区工具也是游刃有余,同时在找回数据的时候也非常容易,并且不会损坏原来的数据&#xff…

项目解决方案:多地医馆的高清视频监控接入汇聚联网

目 录 一、背景 二、建设目标及需求 1.建设目标 2.现状分析 3.需求分析 三、方案设计 1.设计依据 2.设计原则 3.方案设计 3.1 方案描述 3.2 组网说明 四、产品介绍 1.视频监控综合资源管理平台介绍 2.视频录像服务器和存储 2.1概述 2.2存储设计 …

【工具】使用ssh进行socket5代理

文章目录 shellssh命令详解正向代理:反向代理:本地 socks5 代理 shell ssh -D 3333 root192.168.0.11 #输入密码 #3333端口已经使用远程机进行转发设置Windows全局代理转发 socks127.0.0.1 3333如果远程机为公网ip,可通过搜索引擎查询出网…

软件资源管理下载系统全新带勋章功能 + Uniapp前端

测试环境:php7.1。ng1.2,MySQL 5.6 常见问题: 配置好登录后转圈圈,检查环境及伪静态以及后台创建好应用 上传图片不了,检查php拓展fileinfo 以及public文件权限 App个人主页随机背景图,在前端uitl文件…

【数学笔记】集合及简要逻辑

集合 基础简要逻辑集合间的关系与运算 基础 集合定义:把一些能够确定的不同对象组成的整体叫做一个集合,每个对象叫做元素。集合记法:一般用大写字母 A , B , C . . . . . . A,B,C...... A,B,C......表示集合,小写字母 a , b ,…

GD32E230C8T6《调试篇》之 (软件) IIC通信(主机接收从机) + GN1650驱动芯片 + 按键 + 4位8段数码管显示 (成功)

GD32E230C8T6《调试篇》之 (软件) IIC通信 GN1650驱动芯片 4位8段数码管显示(成功) IIC是什么IIC简介1)IIC总线物理连接2)IIC时序协议 按键扫描代码1)DIG2短按只一次,长按超过1s 一…

[晓理紫]每日论文分享(有中文摘要,源码或项目地址)--大模型、扩散模型、视觉导航

专属领域论文订阅 VX 扫嘛关注{晓理紫},每日更新论文,如感兴趣,请转发给有需要的同学,谢谢支持 分类: 大语言模型LLM视觉模型VLM扩散模型视觉导航具身智能,机器人强化学习开放词汇,检测分割 [晓理紫]每日论…

六、数组(1)一维数组

所谓数组,就是一个集合,里面存放了相同类型的数据元素 特点1:数组中每个数据元素都是相同的数据类型 特点2:数组是由连续的内存位置组成的 一、一维数组的定义方式 1、数据类型 数组名[数组长度]; 2、数据类型 数组名[数组长度…

谷歌浏览器通过network模拟HTTP中的GET/POST请求获取response

1、F12打开network选中需要模拟的方法Copy->Copy as fetch 2、通过AI帮你进行转换一下调用格式 原代码 fetch("https://mp.amap.com/api/forward/aggregate?mtop.alsc.kbt.intergration.toolkit.call.queryCallBlockInfo", {"headers": {"acce…

Latex绘图

排查Latex报错 “Command \csubfigure already defined” 这个可以通过添加如下命令: \usepackage{subfig} \usepackage{subfloat} ..... \begin{figure*}[h] \centering \subfloat[subfloat title]{ \label{fig:subfig:a} \includegraphics[scale0.7]{Figs/.....…

python-基础篇-函数

文章目录 函数基础目标01. 函数的快速体验1.1 快速体验 02. 函数基本使用2.1 函数的定义2.2 函数调用2.3 第一个函数演练思考 2.4 PyCharm 的调试工具2.5 函数的文档注释 03. 函数的参数3.1 函数参数的使用3.2 参数的作用3.3 形参和实参 04. 函数的返回值05. 函数的嵌套调用函数…

Spring RabbitMQ那些事(3-消息可靠传输和订阅)

目录 一、序言二、生产者确保消息发送成功1、为什么需要Publisher Confirms2、哪些消息会被确认处理成功 三、消费者保证消息被处理四、Spring RabbitMQ支持代码示例1、 application.yml2、RabbigtMQ配置3、可靠生产者配置4、可靠消费者配置5、测试用例 一、序言 在有些业务场…

VisualSVN Server实战

文章目录 一、实战概述二、实战步骤(一)下载VisualSVN Server(二)安装VisualSVN Server(三)使用VisualSVN Server1、新建仓库(1)新建Repository(2)选择仓库类…

Python 折线图的绘制(Seaborn篇-04)

Python 折线图的绘制(Seaborn篇-04)         🍹博主 侯小啾 感谢您的支持与信赖。☀️ 🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹…

基于python socket实现TCP/UDP通信

两个应用程序如果需要进行通讯最基本的一个前提就是能够唯一的标示一个进程,我们知道IP层的ip地址可以唯一标示主机,而TCP层协议和端口号可以唯一标示主机的一个进程,这样我们可以利用ip地址+协议+端口号唯一标示网络中…

论文阅读_CogTree_推理的认知树

英文名称: From Complex to Simple: Unraveling the Cognitive Tree for Reasoning with Small Language Models中文名称: 从复杂到简单:揭示小型语言模型推理的认知树链接: http://arxiv.org/abs/2311.06754v1代码: https://github.com/alibaba/EasyNLP作者: Junbi…

深入解析 JavaScript 中的 setTimeout() 和 setInterval()

🧑‍🎓 个人主页:《爱蹦跶的大A阿》 🔥当前正在更新专栏:《VUE》 、《JavaScript保姆级教程》、《krpano》、《krpano中文文档》 ​ ​ ✨ 前言 setTimeout() 和 setInterval() 是 JavaScript 中非常常用的定时函数…

Django从入门到精通(一)

目录 一、Django环境搭建与命令 1.1、安装 1.2、命令行 创建项目 编写代码 运行 app概念 1.3、Pycharm创建项目 1.4、虚拟环境 创建虚拟环境 - 命令行 介绍 操作 基本问题 Pycharm 项目虚拟环境 django虚拟环境【安装django最新版本】 django虚拟环境【安装指…

frida https抓包

web端导入证书、https代理即可解决大部分需求,但是,有些app需要处理ssl pinning验证。 废话不多说。frida处理ssl pin的步骤大体如下。 安装python3.x,并在python环境中安装frida: pip install frida pip install frida-tools下载frida-se…

【设计模式】你知道游戏SL大法是什么设计模式吗?

什么是备忘录模式? 老规矩,我们先来看看备忘录模式 (Memento) 的定义:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。 它的UML类图如下&a…