当前位置: 首页 > news >正文

DevOps历程-Gogs的安装与部署

1. 什么是 Gogs?

Gogs 是一款极易搭建的自助 Git 服务。

Gogs 的目标是打造一个最简单、最快速和最轻松的方式搭建自助 Git 服务。使用 Go 语言开发使得 Gogs 能够通过独立的二进制分发,并且支持 Go 语言支持的 所有平台,包括 Linux、Mac OS X、Windows 以及 ARM 平台。

2.整体安装步骤

2.1 安装包下载

首先去官网上下载二进制包

https://gogs.io/docs/installation/install_from_binary.html

在这里插入图片描述

2.2 安装启动

进行安装
检查环境要求是否已满足
上传文件到服务器解压压缩包即可,无需安装。(我把它放到/opt/下)

[root@localhost opt]# ll
-rw-r--r--. 1 root root 27495795 Jul 23 09:16 gogs_0.12.3_linux_amd64.tar.gz[root@localhost opt]# tar -zxvf gogs_0.12.3_linux_amd64.tar.gz
gogs/
gogs/LICENSE
...
[root@localhost opt]# ll
drwxrwxr-x. 3 vagrant vagrant       85 Oct  7  2020 gogs
-rw-r--r--. 1 root    root    27495795 Jul 23 09:16 gogs_0.12.3_linux_amd64.tar.gz[root@localhost opt]# cd gogs/
[root@localhost gogs]# ll
total 48916
-rwxrwxr-x. 1 vagrant vagrant 50067592 Oct  7  2020 gogs
-rw-rw-r--. 1 vagrant vagrant     1054 Oct  7  2020 LICENSE
-rw-rw-r--. 1 vagrant vagrant     7021 Oct  7  2020 README.md
-rw-rw-r--. 1 vagrant vagrant     5372 Oct  7  2020 README_ZH.md
drwxrwxr-x. 7 vagrant vagrant      195 Oct  7  2020 scripts
[root@localhost gogs]# ./gogs web

使用命令 cd /opt/gogs/ 进入到解压的目录。
执行命令 ./gogs web
Gogs 默认会在端口 3000 启动 HTTP 服务,访问 /install 以进行初始配置(例如 http://localhost:3000/install )。
安装完成后可继续参照 配置与运行。

#默认端口启动
./gogs web
#指定端口启动
./gogs web –port 33703 

使用这种方法属于前台启动,如果关闭终端会自动退出,也可以采用后台启动方法。

2.3 初始化配置

需要修改的不多,以下配置作为参考,如果默认3000端口已经被其他端口占用的话,使用后台启动的方式是无法正常启动的,因为在未进行前端安装的情况下,后台启动无法指定端口,只能在前端安装gogs之后才会生成相应的配置文件。
此时可以使用另外一种指定端口方式运行服务例如:./gogs web -port 33703
访问 http://localhost:3000/install 出现初始化页面
在这里插入图片描述
信息填写完毕,安装成功后,会出现以下界面:

2.4 设置开机自启

步骤一:创建 systemd 服务文件

创建 Gogs 的服务文件:

sudo vi /etc/systemd/system/gogs.service

内容如下:

[Unit]
Description=Gogs Git Service
After=network.target[Service]
Type=simple
User=root
WorkingDirectory=/opt/gogs
ExecStart=/opt/gogs/gogs web
Restart=always
Environment=USER=root HOME=/root[Install]
WantedBy=multi-user.target

步骤二:重新加载 systemd 并启动 Gogs 服务

# 重新加载 systemd 配置
sudo systemctl daemon-reexec
sudo systemctl daemon-reload# 启动 Gogs 服务
sudo systemctl start gogs# 设置开机自启
sudo systemctl enable gogs

步骤三:检查服务状态

sudo systemctl status gogs
[root@localhost gogs]# vi  /etc/systemd/system/gogs.service
[root@localhost gogs]# sudo vi /etc/systemd/system/gogs.service
[root@localhost gogs]# sudo systemctl daemon-reexec
[root@localhost gogs]# sudo systemctl daemon-reload
[root@localhost gogs]# sudo systemctl start gogs
[root@localhost gogs]# sudo systemctl status gogs
● gogs.service - Gogs Git ServiceLoaded: loaded (/etc/systemd/system/gogs.service; disabled; vendor preset: disabled)Active: active (running) since Wed 2025-07-23 09:43:34 UTC; 5s agoMain PID: 4133 (gogs)Tasks: 4Memory: 39.8MCGroup: /system.slice/gogs.service└─4133 /opt/gogs/gogs web
Jul 23 09:43:34 localhost.localdomain gogs[4133]: 2025/07/23 09:43:34 [TRACE] Log mode: Console (Trace)
Jul 23 09:43:34 localhost.localdomain gogs[4133]: 2025/07/23 09:43:34 [TRACE] Work directory: /opt/gogs
Jul 23 09:43:35 localhost.localdomain gogs[4133]: 2025/07/23 09:43:35 [ INFO] Listen on http://0.0.0.0:3000
[root@localhost gogs]# 

3.安装完成后

在这里插入图片描述
在这里插入图片描述
安装完成后点击登录,输入你刚刚配置的管理员密码即可愉快的使用啦

作者博客: www.lstar.icu
开源地址
Gitee 地址: https://gitee.com/lxwise
Github 地址: https://github.com/lxwise


文章转载自:

http://90hhSiqU.sskkf.cn
http://VNvx7UZv.sskkf.cn
http://Ph7IcIY2.sskkf.cn
http://fu6Hhg4o.sskkf.cn
http://kErz8BGM.sskkf.cn
http://4SnKkRXt.sskkf.cn
http://6vIO3bOe.sskkf.cn
http://TdLu3QNS.sskkf.cn
http://Djo8iOzd.sskkf.cn
http://Y6WcFE7p.sskkf.cn
http://dtlho5LF.sskkf.cn
http://V1QXDyc8.sskkf.cn
http://9TXRGFpc.sskkf.cn
http://hikXSwJo.sskkf.cn
http://eLub9B1P.sskkf.cn
http://EPMHS0MM.sskkf.cn
http://3D2McdLg.sskkf.cn
http://DhkPQQco.sskkf.cn
http://0V27NW5k.sskkf.cn
http://E0ZlbsBm.sskkf.cn
http://OAnxfr7q.sskkf.cn
http://dhLK9etI.sskkf.cn
http://KItnFQPX.sskkf.cn
http://N8bouVTt.sskkf.cn
http://kCaruWJN.sskkf.cn
http://cPvKiuYy.sskkf.cn
http://KX1dAFW1.sskkf.cn
http://2kxGMXDz.sskkf.cn
http://vYFHaH2W.sskkf.cn
http://uYsLM6qx.sskkf.cn
http://www.dtcms.com/a/385604.html

相关文章:

  • FreeRTOS 任务静态创建与句柄详解
  • 嵌入式音视频开发——RTMP协议详解
  • 每日一题(6)
  • 信号量主要API及综合应用
  • 【开题答辩全过程】以 B站用户视频喜好倾向数据分析系统为例,包含答辩的问题和答案
  • ARM架构学习6.2——中断理解
  • 搭建Qt5.14.2+msvc2017_x64项目测试Opencv4.10功能
  • Steger 算法 的原理和流程
  • WD5030K:一款7-30V宽输入范围、12A高效同步降压DC-DC转换器芯片详解
  • 《2025年AI产业发展十大趋势报告》五十七
  • 滴滴试点返程费自主议价将会怎么改变市场?
  • 【嵌入式原理系列-第八篇】USART从原理到配置全解析
  • Python4-seaborn
  • 使用 Aamzon Step Functions 重构无服务器工作流
  • 模电基础:场效应管
  • Typescript工具类型
  • Spring异步编程- 浅谈 Reactor 核心操作符
  • 21.5 单卡24G训7B大模型!HuggingFace TRL+QLoRA实战,3倍提速显存直降70%
  • git中,如果在文件夹A下有文件夹B、C文件夹,现在在A下创建仓库,连接远程仓库,那么如何在提交的时候忽略B、C,排除对B、C管理
  • Java Web 入门实战:SpringBoot+Spring MVC 从 0 到 1 学习指南
  • 电磁流量计可靠品牌之选,基恩士提供多样化解决方案
  • 三大基础无源电子元件——电阻(R)、电感(L)、电容(C)
  • Baklib:从传统到AI驱动的新一代数字体验平台
  • 机器视觉在人形机器人中有哪些检测应用
  • Java的Arrays类
  • 每天认识一个电子器件之LED灯
  • 每日前端宝藏库 | anime.js⏳✨
  • CSS脉冲光环动画效果
  • C++ 之【C++11的简介】(可变参数模板、lambda表达式、function\bind包装器)
  • 【基础组件 and 网络编程】对 DPDK 的 MPMC 无锁队列 rte-ring 组件的思考分析(同时也是实战原子操作的好机会)