文章来自:http://blog.youkuaiyun.com/intbird 转载请说明出处
一般情况下 公司内网 git + maven + jenkins 是同一网域公开访问的
但也有例外:
比如公司没有提供***账号供外网访问, 则在家无法访问公司内网资源
如果自己在家的电脑配置够强悍,也可以远程运行服务(如jenkins)
但git中的maven仓库为公司私有网络外网无法访问,
所以有了这篇文章, 主要是内网穿透
的使用(socks代理)
注意:
公司内网穿透的风险是 会暴露公司内网服务,请严格遵守公司制度
我的jenkins地址: https://intbird.net/jenkins/
目录
1. Centos主机防火墙设置
开放 8080 端口
firewall-cmd --add-port=8080/tcp --permanent
关闭防火墙
systemctl stop firewalld
systemctl disable firewalld.service
80或者443网络代理
nginx : https://blog.youkuaiyun.com/intbird/article/details/103507135
httpd : https://blog.youkuaiyun.com/intbird/article/details/105159462
caddy : https://blog.youkuaiyun.com/intbird/article/details/108501270
2. 安装和启动Jenkins
1. war包方式
yum install java
curl http://*****.jenkins.war --output jenkins.war
nohup java -jar jenkins.war --httpPort=8080 >jenkins.log 2>&1 &
2. install方式
#安装jenkins
sudo wget -O /etc/yum.repos.d/jenkins.repo
https://pkg.jenkins.io/redhat-stable/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
sudo yum upgrade
sudo yum install jenkins java-1.8.0-openjdk-devel
#启动jenkins
sudo systemctl start jenkins
3. 创建jenkins用户
浏览器打开地址
- 默认8080端口
open http://ip:8080/
比如我的jenkins: https://intbird.net/jenkins/
2.修改端口
- java -jar *.war --httpPort=8081
- etc/sysconfig/jenkins 修改端口
首次进入密码
vi /var/lib/jenkins/secrets/initialAdminPassword
添加用户凭证
用于外部授权触发Jenkins任务(如gitlab等)
Jenkins user token = Jenkins → 用户 → 设置 → API Token → copy only once text
修改地址和代理
- 添加地址前缀
编辑: /etc/sysconfig/jenkins
修改: JENKINS_ARGS="–prefix=/jenkins/"
重启: systemctl restart jenkins
- 修改代理
/jenkins/* = localhost:8080
curl https://intbird.net/jenkins/
- docker中使用
则传递 Env
ENKINS_OPTS: --prefix=/jenkins
反向代理
route /jenkins/* {
reverse_proxy net-jenkins:8080
}