昨天折腾半天才折腾了git私服 晚上折腾完了去看知乎发现有个叫gogs的开源git 哎听说树莓派都上都能用我看了看我的大盘鸡只有512m内存应该是够的 哈哈 就又开始了折腾 今天的受害者又是大盘鸡
我懒就直接是sqllte+二进制+nginx反向代理安装的所以没有数据库的创建啥啥啥的
首先创建用户创建一个git用户
useradd git -m -s /bin/bash //创建一个有家目录的用户指定shell为bash
passwd git //设置git用户的密码
apt install git
su git
cd ~
screen -S gogs
wget https://dl.gogs.io/0.12.3/gogs_0.12.3_linux_amd64.zip //下载gogs[更多版本](https://gogs.io/docs/installation/install_from_binary)
unzip gogs_0.12.3_linux_amd64.zip //解压
cd gogs //进入gogs文件夹
./gogs web //运行二进制文件
运行完成记得切换出来这里用的screen先运行ctrl+a+d退出虚拟终端
这里记得要开启3000端口默认是监听3000端口
这个时候就可以在浏览器中输入 http://远程主机IP:3000 或者 http://域名:3000 便可以打开 gogs 的 web 界面:
然后域名写你的域名就好了端口不变就好了反正有反代
或者先写本地的地址因为有反代问题不大就是进去了 git地址啥啥啥的显示本地地址
然后就是配置nginx了
su //输入密码切换到root
apt install nginx
vi /etc/nginx/conf.d/你的域名.conf
然后写入配置保存这里是我写的配置
server {
server_name 你的域名;
listen 80;
#ssl on;
location /{
proxy_pass http://127.0.0.1:3000/;
proxy_redirect default;
}
}
测试一下配置有没有问题
nginx -t
nginx -s reload //重新载入配置文件这里记得如果用certbot部署了ssl也要重新载入一下配置
然后就是ssl 我是通过certbot傻瓜式部署的这就没啥好说的了参考
部署完成为了能够自动启动
cd /lib/systemd/system
vim gogs.service
加入以下内容:
[Unit]
Description=Gogs
After=syslog.target
After=network.target
After=mysqld.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/gogs
ExecStart=/home/git/gogs/gogs web
Restart=always
Environment=USER=git HOME=/home/git
[Install]
WantedBy=multi-user.target
现在去screen结束任务使用systemctl管理
su git //切换到git用户
screen -r gogs //进入gogs这个虚拟终端
输入ctrl+c结束任务
creen -S gogs -X quit //删除gogs虚拟终端
开机启动服务:
systemctl enable gogs.service
启动服务:
systemctl start gogs
查看状态:
systemctl status gogs
至此就结束了
Comments | NOTHING