jenkins 设置Nginx代理

示例

Jenkins在本地运行在端口8080上。我们可以从端口80-> 8080建立代理,因此可以通过以下方式访问Jenkins:

http://<url>.com

而不是默认值

http://<url>.com:8080

首先安装Nginx。

sudo aptitude -y install nginx

删除Nginx的默认设置

cd /etc/nginx/sites-available

sudo rm default ../sites-enabled/default

创建新的配置文件

sudo touch jenkins

将以下代码复制到新创建的jenkins文件中。

upstream app_server {
  server 127.0.0.1:8080 fail_timeout=0;
}

server {
  listen 80;
  listen [::]:80 default ipv6only=on;
  server_name ;

  location / {
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_redirect off;

    if (!-f $request_filename) {
        proxy_pass http://app_server;
        break;
    }
  }
}

在可用站点和启用站点之间创建符号链接:

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

重新启动Nginx代理服务

sudo service nginx restart

现在可以从80端口访问Jenkins。