Ubuntu 22.04 用 snap 安装 gitea,并配置 nginx 反向代理
今天给新开的阿里云主机(系统是 Ubuntu 22.04)安装一个私有的 git 仓库,选用 Gitea。
结果发现 apt 下没有这个软件包。想起来 ubuntu 开始用 snap 了,于是用 snap 试试。
root@ubuntu:~# snap install gitea
gitea v1.21.2 from Gitea installed
果然好使。
检查了一下,发现已经跑起来了。
ps aux | grep gitea
root 231929 1.4 9.8 1916768 171100 ? Ssl 12:45 0:03 /snap/gitea/6697/gitea web
Snap 包是由 Ubuntu 的商业公司 Canonical 公司推出的一项技术,它为用户提供了一种轻松、可靠、跨平台的方式来获取和维护软件。
使用 sudo snap services gitea
命令,可以查看服务状态:
$ sudo snap services gitea
Service Startup Current Notes
gitea.web enabled active -
查看详细日志可以使用 snap logs
命令:
snap logs gitea
# 也可以使用 journalctl
sudo journalctl -u snap.gitea.*
snap 安装的 gitea 实际安装目录是 /snap/gite
。
gitea 端口
默认情况下 gitea 运行在 3000 端口:
# lsof -i:3000
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
gitea 231929 root 3u IPv6 1664271 0t0 TCP *:3000 (LISTEN)
重启 gitea:
sudo snap restart gitea
配置 nginx 反向代理
server {
listen 80;
server_name gitea.crowall.com;
return 301 https://gitea.crowall.com$request_uri;
}
server {
listen 443 ssl http2;
server_name gitea.crowall.com;
ssl_certificate "/root/.acme.sh/gitea.crowall.com_ecc/fullchain.cer";
ssl_certificate_key "/root/.acme.sh/gitea.crowall.com_ecc/gitea.crowall.com.key";
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";
ssl_ecdh_curve secp384r1;
ssl_session_cache shared:SSL:10m;
ssl_session_tickets off;
ssl_stapling on;
ssl_stapling_verify on;
location / {
proxy_pass http://localhost:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}