nginx代理gitee

背景

若干台agv设备,这些设备都是没有公网的(无法访问百度等)。

一台服务器(ubuntu20.04)有线可以公网,无线可以实现内部通信(agv,plc等设备)。

目的

agv每一次更新代码,拉取代码等都需要切换到有公网的网络,多台agv设备切来切去很麻烦。现在要实现agv通过服务器的nginx代理gitee拉取代码。

代理服务器配置步骤

更新源

bash 复制代码
sudo apt update

下载nginx

bash 复制代码
sudo apt install nginx

配置nginx

bash 复制代码
sudo nano /etc/nginx/site-available/gitee_proxy

配置文件内容

bash 复制代码
server {
    listen 80;   #端口这里自己定义,80被用了就用别的
    server_name 192.168.50.80;

    location / {
        proxy_pass https://gitee.com;
        proxy_set_header Host gitee.com;
        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;
proxy_redirect off;
    }
}

创建符号链接以启用新配置

bash 复制代码
sudo ln -s /etc/nginx/sites-available/gitee_proxy /etc/nginx/sites-enabled/

检查nginx配置是否正确

bash 复制代码
sudo nginx -t

重启nginx使配置生效

bash 复制代码
sudo systemctl restart nginx

AGV等其他需要代理到gitee的设备操作

bash 复制代码
git remote set-url origin http://192.168.50.80/username/repository.git
#这里的192.168.50.80就是ngixn配置server_name,ip为无网的服务器的ip
#这里的git请求由192.168.50.80服务器代理转发到gitee

检查设置是否成功

git remote -v 输出为++++http://192.168.50.80/用户名/仓库.git 则无问题++++

++++此时直接拉代码 就会提示输入用户名与密码 完成代码拉取++++

增加代理

拉取代码发现速度比较慢,网上查找后说要给gitee增加代理

git config --global https.proxy http://192.168.50.80:80

git config --global https.proxy https://192.168.50.80:80

克隆代码

git init

git clone http://192.168.50.80/repository.git

相关推荐
云飞云共享云桌面7 小时前
传统工作站 vs 云飞云共享云桌面:制造业设计云桌面选型深度对比
运维·服务器·前端·网络·3d·架构·制造
楠目10 小时前
Nginx 解析漏洞利用总结
nginx·网络安全
Maynor99610 小时前
我用 Codex 给自己的网站上线了一个智能体客服:从 Dify 到服务器部署,全程实战复盘
运维·服务器
java_cj11 小时前
深入kubectl create源码:从YAML到Pod的完整链路拆解
运维·云原生·容器·kubernetes
深圳恒讯12 小时前
越南服务器BGP多线和单线有什么区别?
运维·服务器
志栋智能12 小时前
超自动化运维如何提升安全合规水平?
运维·安全·自动化
A_humble_scholar12 小时前
Linux(九) 进程管理完全指南:从入门到实战
linux·运维·chrome
江华森13 小时前
Linux 操作命令完全指南
linux·运维
源图客13 小时前
【AI向量数据库】Weaviate介绍与部署
运维·docker·容器
用什么都重名13 小时前
Git分支合并与远程服务器同步实战:保留关键配置文件
运维·服务器·git