Gitea是一个轻量级的开源代码托管平台软件,易于部署和维护,可以实现github大部分功能。由于具有版本控制功能,也非常适合于安装到VPS上作为文件备份平台使用,例如作为Obsidian笔记的同步仓库就是非常好的选择。对比于github传输更稳定,不必担心封号风险;而对比于国内的gitee则不存在审核问题,更加安全可靠。本教程以远程debian/ubuntu系统与本地windows系统为例,对Gitea的布署与使用进行说明。
安装docker与docker-compose
curl -sSL https://get.docker.com/ | shsudo apt-get install docker-compose-pluginsudo chmod +x /usr/local/bin/docker-compose安装Gitea
创建gitea文件夹
创建配置文件docker-compose.yml,设置http端口30000,ssh端口2222,可以自定义更改。
#version: "3"networks: gitea: external: falseservices: server: image: docker.gitea.com/gitea:latest container_name: gitea environment: - USER_UID=1000 - USER_GID=1000 restart: always networks: - gitea volumes: - ./gitea:/data - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro ports: - "30000:3000" - "2222:22"重启docker-compose
docker compose downdocker compose up -d打开“ip:30000”,添加管理员账户,其他设置可保持默认,然后执行安装
设置反向代理
安装Nginx
sudo apt update && sudo apt install -y nginx修改反代配置文件:/etc/nginx/sites-available/default
map $http_upgrade $connection_upgrade { default upgrade; '' close;}server { listen 80; server_name 域名; client_max_body_size 512M; location / { proxy_pass http://127.0.0.1:30000; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $connection_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; }}安装申请证书插件并申请证书:
sudo apt install certbot python3-certbot-nginx -ysudo certbot --nginx -d 域名重启Nginx
sudo nginx -t && sudo systemctl reload nginx修改配置文件docker-compose.yml禁止IP访问
#version: "3"networks: gitea: external: falseservices: server: image: docker.gitea.com/gitea:latest container_name: gitea environment: - USER_UID=1000 - USER_GID=1000 restart: always networks: - gitea volumes: - ./gitea:/data - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro ports: - "127.0.0.1:30000:3000" - "2222:22"HTTPS推送
安装git命令
进入本地文件夹,右键启动PowerShell。
初始化本地仓库
git init添加远程仓库地址
git remote add origin 远程仓库https地址推送命令
git add .git commit -m "自定义标记"git push origin main远程拉取的命令
git pull origin mainSSH推送
生成密钥对
ssh-keygen -t ed25519 -C "邮箱" -f 密钥文件名称复制.pub公钥文件内容,添加到Gitea平台中。
修改C:\Users\Yang.ssh\config文件
Host 自定义名称 HostName 域名或IP User git Port 2222 PreferredAuthentications publickey IdentityFile 密钥文件位置测试连接
ssh -T 自定义名称查看现有远程仓库
git remote -v删除已有远程仓库关连地址
git remote remove origin添加远程仓库地址
git remote add origin git@远程仓库ssh地址执行推送与拉取命令即可。
评论 (0)