Debian 环境中安装git服务器 Gogs(下)

本文涉及的产品
云原生数据库 PolarDB PostgreSQL 版,标准版 2核4GB 50GB
云原生数据库 PolarDB MySQL 版,通用型 2核4GB 50GB
简介: 在本教程中,我们将使用 Gogs 在 Debian 9 上按步骤指导您安装和配置您的私有 Git 服务器。这篇教程中涵盖了如何在 Debian Stretch 上安装 Go 语言、PostgreSQL 和安装并且配置 Nginx 网页服务器作为 Go 应用的反向代理的细节内容。

在本教程中,我们将使用 Gogs 在 Debian 9 上按步骤指导您安装和配置您的私有 Git 服务器。这篇教程中涵盖了如何在 Debian Stretch 上安装 Go 语言、PostgreSQL 和安装并且配置 Nginx 网页服务器作为 Go 应用的反向代理的细节内容。

步骤 4 – 使用 Gogs 安装 Git 服务

使用 git 用户登录并且使用 go 命令从 GitHub 下载 Gogs,

su - git
go get -u github.com/gogits/gogs

此命令将在 $GOPATH/src 目录下载 Gogs 的所有源代码。

切换至 $GOPATH/src/github.com/gogits/gogs 目录,并且使用下列命令搭建 Gogs。

cd $GOPATH/src/github.com/gogits/gogs
go build

确保你没有遇到错误。

现在使用下面的命令运行 Gogs Go Git 服务器。

./gogs web

此命令将会默认运行 Gogs 在 3000 端口上。

打开网页浏览器,键入您的 IP 地址和端口号,我的是 http://192.168.150.100:3000/ 。

你将会得到与如下的 web 界面,

Gogs 已经在您的 Debian 系统上安装完毕。现在返回到您的终端,并且键入 Ctrl + C 中止服务。

步骤 5 – 配置 Gogs Go Git 服务器

本步骤中,我们将为 Gogs 创建惯例配置。

进入 Gogs 安装目录并新建 custom/conf 目录,复制默认的配置文件到 custom 目录,并用 vim 打开,

cd $GOPATH/src/github.com/gogits/gogs
mkdir -p custom/conf/
cp conf/app.ini custom/conf/app.ini
vim custom/conf/app.ini

在 [server] 小节中,修改 HOST_ADDR 为 127.0.0.1

[server]
 PROTOCOL = http
 DOMAIN = localhost
 ROOT_URL = %(PROTOCOL)s://%(DOMAIN)s:%(HTTP_PORT)s/
 HTTP_ADDR = 127.0.0.1
 HTTP_PORT = 3000

在 [database] 选项中,按照您的数据库信息修改。

[database]
 DB_TYPE = postgres
 HOST = 127.0.0.1:5432
 NAME = gogs_production
 USER = git
 PASSWD = aqwe123@#

保存并退出。运行命令验证配置项是否正确,

./gogs web

Gogs 现在已经按照自定义配置下运行在 localhost 的 3000 端口上了。

步骤 6 – 运行 Gogs 服务器

这一步,我们将在 Debian Stretch 系统上配置 Gogs 服务器。我们会在 /etc/systemd/system目录下创建一个新的服务器配置文件 gogs.service

切换到 /etc/systemd/system 目录,使用 vim 创建服务器配置文件 gogs.service

cd /etc/systemd/system
vim gogs.service

粘贴下面的代码到 Gogs 服务器配置文件中。

[Unit]
Description=Gogs
After=syslog.target
After=network.target
After=mariadb.service mysqld.service postgresql.service memcached.service redis.service
 
[Service]
# Modify these two values and uncomment them if you have
# repos with lots of files and get an HTTP error 500 because
# of that
###
#LimitMEMLOCK=infinity
#LimitNOFILE=65535
Type=simple
User=git
Group=git
WorkingDirectory=/home/git/go/src/github.com/gogits/gogs
ExecStart=/home/git/go/src/github.com/gogits/gogs/gogs web
Restart=always
Environment=USER=git HOME=/home/git
 
[Install]
WantedBy=multi-user.target

保存并退出。

重载系统服务器,并设置 Gogs 服务器为开机自启动。

systemctl daemon-reload
systemctl start gogs
systemctl enable gogs

使用下面的命令开启 Gogs 服务器并设置为开机启动。 Gogs 服务器现在已经运行在你的 Debian 系统上了。

使用下面的命令检测:

netstat -lnptu
systemctl status gogs

您应该会得到下图所示的结果。

步骤 7 – 为 Gogs 安装和配置 Nginx 反向代理

在本步中,我们将为 Gogs 安装和配置 Nginx 反向代理。我们会在自己的库中调用 Nginx 包。安装 Nginx,

sudo apt update
sudo apt install nginx -y

进入 /etc/nginx/sites-available 目录并且创建虚拟主机文件 gogs,粘贴下面的代码到配置文件:

server {
     listen 80;
     server_name git.hakase-labs.co;
 
     location / {
         proxy_pass http://localhost:3000;
     }
 }

保存退出。

注意: 请使用您的域名修改 server_name 项。

现在激活虚拟主机并且测试 nginx 配置。

ln -s /etc/nginx/sites-available/gogs /etc/nginx/sites-enabled/
nginx -t

确保没有遇到错误,重启 Nginx 服务器。

systemctl restart nginx

步骤 8 – 测试

打开您的网页浏览器并且输入您的 Gogs URL,我的是 http://git.hakase-labs.co

现在您将进入安装界面。在页面的顶部,输入您所有的 PostgreSQL 数据库信息。

现在,Gogs 已经通过 PostgreSQL 数据库和 Nginx 服务器运行在你的 Debian Stretch 上了。


原文发布时间:2018-03-10
本文来自云栖社区合作伙伴“ Debian社区”,了解相关信息可以关注“ Debian社区”。
相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
相关文章
|
8天前
|
存储 人工智能 自然语言处理
ChatMCP:基于 MCP 协议开发的 AI 聊天客户端,支持多语言和自动化安装 MCP 服务器
ChatMCP 是一款基于模型上下文协议(MCP)的 AI 聊天客户端,支持多语言和自动化安装。它能够与多种大型语言模型(LLM)如 OpenAI、Claude 和 OLLama 等进行交互,具备自动化安装 MCP 服务器、SSE 传输支持、自动选择服务器、聊天记录管理等功能。
72 15
ChatMCP:基于 MCP 协议开发的 AI 聊天客户端,支持多语言和自动化安装 MCP 服务器
|
26天前
|
Ubuntu
ubuntu和debian 的安装包dpkg管理命令对安装包进行安装,查询,卸载
Ubuntu dpkg 软件包管理命令概览:安装、卸载、查看和配置软件包。包括解决依赖、强制卸载、列出及过滤已安装包、查看包详情等操作。
53 10
|
29天前
|
Ubuntu 网络协议 关系型数据库
超聚变服务器2288H V6使用 iBMC 安装 Ubuntu Server 24.04 LTS及后续系统配置
【11月更文挑战第15天】本文档详细介绍了如何使用iBMC在超聚变服务器2288H V6上安装Ubuntu Server 24.04 LTS,包括连接iBMC管理口、登录iBMC管理界面、配置RAID、安装系统以及后续系统配置等步骤。
|
1月前
|
NoSQL Linux PHP
如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤
本文介绍了如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤。接着,对比了两种常用的 PHP Redis 客户端扩展:PhpRedis 和 Predis,详细说明了它们的安装方法及优缺点。最后,提供了使用 PhpRedis 和 Predis 在 PHP 中连接 Redis 服务器及进行字符串、列表、集合和哈希等数据类型的基本操作示例。
57 4
|
2月前
|
监控 Java Linux
Linux系统之安装Ward服务器监控工具
【10月更文挑战第17天】Linux系统之安装Ward服务器监控工具
64 5
Linux系统之安装Ward服务器监控工具
|
1月前
|
Ubuntu Shell 开发工具
ubuntu/debian shell 脚本自动配置 gitea git 仓库
这是一个自动配置 Gitea Git 仓库的 Shell 脚本,支持 Ubuntu 20+ 和 Debian 12+ 系统。脚本会创建必要的目录、下载并安装 Gitea,创建 Gitea 用户和服务,确保 Gitea 在系统启动时自动运行。用户可以选择从官方或小绿叶技术博客下载安装包。
51 2
|
1月前
|
编解码 安全 Linux
网络空间安全之一个WH的超前沿全栈技术深入学习之路(10-2):保姆级别教会你如何搭建白帽黑客渗透测试系统环境Kali——Liinux-Debian:就怕你学成黑客啦!)作者——LJS
保姆级别教会你如何搭建白帽黑客渗透测试系统环境Kali以及常见的报错及对应解决方案、常用Kali功能简便化以及详解如何具体实现
|
2月前
|
人工智能 安全 大数据
ARM 服务器上安装 OpenEuler (欧拉)
openEuler 是华为于2019年开源的操作系统,支持多种处理器架构,包括X86和鲲鹏。截至2020年底,openEuler 拥有3万社区用户、2万多个拉取请求、2000多名贡献者和7032款软件。openEuler 提供高效、稳定、安全的系统,适用于数据库、大数据、云计算和人工智能等场景。本文介绍了在神州鲲泰 R522 服务器上安装 openEuler 的详细步骤,包括下载镜像、配置 RAID 和 BIOS 设置等。
316 0
ARM 服务器上安装 OpenEuler (欧拉)
|
2月前
|
Ubuntu TensorFlow 算法框架/工具
NVIDIA Triton系列05-安装服务器软件
本文介绍了NVIDIA Triton推理服务器的安装方法,涵盖源代码编译、可执行文件安装及Docker容器部署三种方式。重点讲解了在NVIDIA Jetson AGX Orin设备上的安装步骤,适合Ubuntu 18及以上系统。通过检查HTTP端口状态确认服务器运行正常,为后续客户端软件安装做准备。
66 0
NVIDIA Triton系列05-安装服务器软件
|
2月前
|
Oracle Java 关系型数据库
在 Debian 12 上安装 Java 21
在 Debian 12 上安装 Java 21
下一篇
DataWorks