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

相关推荐
GZ_TOGOGO11 小时前
sudo 命令详解与安全使用指南
linux·运维·安全
热爱Liunx的丘丘人11 小时前
Docker Compose 实现 Nginx 与 MySQL 多容器服务编排
mysql·nginx·docker
yyuuuzz11 小时前
企业出海场景下的技术适配小经验
运维·服务器·网络·云计算·aws
dnfdsaa11 小时前
【如何在Ubuntu 22上安装Claude Code并配置跳过官方引导】
linux·运维·ubuntu
热爱Liunx的丘丘人11 小时前
Docker
运维·docker·容器
AOwhisky11 小时前
Ceph系列第一期:Ceph分布式存储核心概念与架构初识
linux·运维·笔记·分布式·ceph·学习·架构
谷雨不太卷12 小时前
进程如何加载文件
linux·运维·服务器
shandianchengzi12 小时前
【记录】LosslessCut|Linux下配置开源无损剪辑软件 LosslessCut AppImage 命令行启动和设置图标
linux·运维·服务器·音视频·视频·剪辑
小猫咪0112 小时前
Linux 查看端口占用:netstat、ss、lsof 谁更好用?
linux·运维·网络
都在酒里12 小时前
Linux字符设备驱动开发(八):中断底半部——tasklet与工作队列实现按键消抖
linux·运维·驱动开发·交互