CentOS系统中配置Gogs服务器指南

需积分: 50 8 下载量 6 浏览量 更新于2024-09-07 收藏 2KB TXT 举报
"在CentOS系统中配置Gogs的详细步骤" Gogs是一个自托管的Git服务,适用于构建自己的代码仓库。以下是在CentOS环境下配置Gogs的详细过程: 1. 下载Gogs 首先,通过wget命令从官方站点下载最新版本的Gogs。例如,下载0.11.34版本: ``` wget https://dl.gogs.io/0.11.34/linux_amd64.tar.gz ``` 2. 解压Gogs 使用tar命令解压缩下载的文件,可以将其解压至自定义目录,如/home/wwwroot/: ``` tar -zxvf linux_amd64.tar.gz 或 mkdir -p /home/wwwroot && sudo tar -zxvf linux_amd64.tar.gz -C /home/wwwroot ``` 3. 安装依赖软件 安装Git,SQLite的开发库以及screen工具,这些是Gogs运行所需的依赖: ``` sudo yum install -y git sudo yum install sqlite-devel sudo yum install screen ``` 4. 启动Gogs 创建一个screen会话来运行Gogs服务,防止因SSH断开导致服务停止: ``` screen -S gogs ``` 然后切换到解压后的Gogs目录并运行Gogs: ``` cd /home/wwwroot/gogs ./gogs web ``` 5. 恢复screen会话 若要查看或控制Gogs服务,可以使用以下命令恢复screen会话: ``` screen -r gogs ``` 6. 配置iptables防火墙 为了让外部访问能够到达Gogs服务,需要开放必要的端口。编辑iptables配置文件: ``` vi /etc/sysconfig/iptables ``` 添加如下规则,允许80、443和3000端口的TCP连接: ``` -A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT -A INPUT -p tcp -m state --state NEW -m tcp --dport 443 -j ACCEPT -A INPUT -p tcp -m state --state NEW -m tcp --dport 3000 -j ACCEPT ``` 保存更改并重启iptables服务: ``` systemctl restart iptables.service ``` 7. 配置HTTPS支持 要启用HTTPS,需修改Gogs的配置文件`/home/wwwroot/gogs/custom/conf/app.ini`,将以下部分: ``` [server] HTTP_PORT = 3000 PROTOCOL = http ROOT_URL = http://git.koo9.com/ ``` 更改为: ``` [server] HTTP_PORT = 443 PROTOCOL = https ROOT_URL = https://git.koo9.com/ CERT_FILE = custom/conf/https/git.koo9.com.crt KEY_FILE = custom/conf/https/git.koo9.com.key ``` 确保提供有效的SSL证书和密钥文件。 8. 配置HTTP到HTTPS重定向 如果希望所有HTTP请求自动跳转到HTTPS,可以在Nginx的配置文件`/usr/local/nginx/conf/nginx.conf`中添加一个新的server块,如下所示: ``` server { listen 80; server_name localhost; rewrite ^(.*)$ https://$host$1 permanent; } ``` 重启Nginx以应用更改: ``` systemctl restart nginx ``` 完成以上步骤后,你的CentOS服务器上就成功配置了一个运行在HTTPS下的Gogs实例,可以安全地托管和管理代码仓库了。记得在实际操作时根据实际情况调整IP地址、域名和端口号。