本文采用的是docker運行Nginx並反向代理Jenkins。nginx與docker。
nginx與Jenkins位於同一個內部網絡「inet」。更詳細的請參考「Docker Install Nginx & gitlab 絕對可行版本」html
$docker network create inet
注意jenkins.local這個是內部網絡Jenkins容器主機名。其它配置大路貨不用細看nginx
upstream docker_jenkins{ server jenkins.local:8080; <----這裏 } server{ listen 443 ssl; server_name jks.i.smokelee.com; sendfile on; ssl_certificate /etc/nginx/certs/jks.i.smokelee.com.crt; ssl_certificate_key /etc/nginx/certs/jks.i.smokelee.com.key; location /{ proxy_pass http://docker_jenkins; proxy_redirect http:// https://; 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; } }
這裏參考了一篇文章但找不到出處了,有原創做者看到了能夠聯繫我。兜裏只有10塊錢,能夠請你包煙。git
準備一個文件plugins.txtdocker
#localization-zh-cn localization-zh-cn:::https://mirrors.tuna.tsinghua.edu.cn/jenkins/plugins/localization-zh-cn/latest/localization-zh-cn.hpi
編寫Dockerfilejson
FROM jenkins:lts COPY plugins.txt /usr/share/jenkins/ref/plugins.txt RUN /usr/local/bin/install-plugins.sh < /usr/share/jenkins/ref/plugins.txt
編譯bash
$docker build -t jenkins-chn:lts .
docker run -d \ --restart=always \ --network inet \ # Docker自定義的內部網絡 --network-alias jenkins.local \ --name jenkins \ -v /media/ext2/jenkins/:/var/jenkins_home \ --name jenkins \ jenkins-chn:lts
這裏就是不少人加速效果不明顯的地方了,清華的鏡像,json文件中存放的仍然是官方的地址,因此這裏進行替換!網絡