Forgejo是一款自托管轻量级软件代码托管平台。
准备
提前安装Nginx。
下载Forgejo二进制文件
Forgejo下载页面,下载最新版二进制文件。
1 2
| wget https://codeberg.org/forgejo/forgejo/releases/download/v15.0.3/forgejo-15.0.3-linux-amd64 -O /usr/local/bin/forgejo chmod a+x /usr/local/bin/forgejo
|
安装git及相关程序
1 2 3 4 5
| apt install git git-lfs
yum install git git-lfs
|
添加git用户
添加git用户,使Forgejo运行在git用户下。
1 2 3 4 5 6 7 8
| adduser --system --shell /bin/bash --gecos 'Git Version Control' \ --group --disabled-password --home /home/git git
groupadd --system git useradd --system --shell /bin/bash --comment 'Git Version Control' \ --gid git --home-dir /home/git --create-home git
|
创建Forgejo运行及配置目录
1 2 3 4
| mkdir /var/lib/forgejo chown git:git /var/lib/forgejo && chmod 750 /var/lib/forgejo mkdir /etc/forgejo chown root:git /etc/forgejo && chmod 770 /etc/forgejo
|
在Linux中以service方式运行
Forgejo提供了一个systemd服务脚本。
1
| wget https://codeberg.org/forgejo/forgejo/raw/branch/forgejo/contrib/systemd/forgejo.service -O /etc/systemd/system/forgejo.service
|
重新加载systemd
启动Forgejo服务
1 2
| systemctl enable forgejo.service systemctl start forgejo.service
|
配置Forgejo
停止Forgejo服务
1
| systemctl stop forgejo.service
|
配置app.ini权限
1
| chmod 750 /etc/forgejo && chmod 640 /etc/forgejo/app.ini
|
可以根据官方配置文档及示例文件以root用户身份进一步编辑配置文件,然后重新启动服务。
配置Nginx反代
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
| server { listen 80; listen [::]:80;
server_name domain.name merge_slashes off;
return 301 https://$host$request_uri; }
server { listen 443 ssl; listen [::]:443 ssl; http2 on;
server_name domain.name;
ssl_certificate /path/key.crt; ssl_certificate_key /path/cert.key;
location / { proxy_pass http://127.0.0.1:3000;
proxy_set_header Connection $http_connection; proxy_set_header Upgrade $http_upgrade; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme;
client_max_body_size 512M; } }
|
后记
打开域名访问Forgejo服务,进行后续安装配置。
其它问题可查询官方文档。