背景

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

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

 目的

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

 代理服务器配置步骤

更新源

sudo apt update

下载nginx

sudo apt install nginx

配置nginx

sudo nano /etc/nginx/site-available/gitee_proxy

配置文件内容

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;
    }
}

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

sudo ln -s /etc/nginx/sites-available/gitee_proxy /etc/nginx/sites-enabled/

检查nginx配置是否正确

sudo nginx -t

重启nginx使配置生效

sudo systemctl restart nginx

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

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

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部