No necesita servir a Jenkins directamente en el puerto 80. Puede usar su instalación de Apache2 para el proxy de Jenkins, con el mod de Apache2 proxy (tendrá que habilitar el mod de proxy y reiniciar Apache2).
Aquí puede consultar mi propia instalación de Jenkins con proxy de Apache2, de hecho, la sirvo a través de HTTPS (443), HTTP (80) solo redirigir a la conexión segura.
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName jenkins.ociotec.com
ErrorLog ${APACHE_LOG_DIR}/jenkins.ociotec.com.error.log
CustomLog ${APACHE_LOG_DIR}/jenkins.ociotec.com.access.log combined
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
</VirtualHost>
<IfModule mod_ssl.c>
<VirtualHost *:443>
ServerAdmin [email protected]
ServerName jenkins.ociotec.com
ErrorLog ${APACHE_LOG_DIR}/jenkins.ociotec.com.error.log
CustomLog ${APACHE_LOG_DIR}/jenkins.ociotec.com.access.log combined
SSLEngine on
SSLProxyEngine on
SSLCertificateFile /etc/apache2/ssl/jenkins.ociotec.com.cert
SSLCertificateKeyFile /etc/apache2/ssl/jenkins.ociotec.com.key
ProxyPreserveHost On
ProxyPass / http://ociotec.com:8001/
ProxyPassReverse / http://ociotec.com:8001/
</VirtualHost>
</IfModule>
Como puedes ver al final, mi Jenkins se sirve en http://ociotec.com:8001
, pero apoderado por apache en https://jenkins.ociotec.com
.
Emilio González Montaña
fuente