I have a set up, of office Jira server , to serve over local network .
So after lot of tries , i cant figure out , how to solve the issue .
Please help me.
My config is:
I use self signed certificate .
Client from local internal network HTTPS => revers proxy nginx => JIRA on Docker.
Docker-compose.xml
jiraserver:
container_name: jiraserver
depends_on:
- postgresql
image: atlassian/jira-software:latest
volumes:
- jiradata:/var/atlassian/jira
hostname: jira.internal.com
environment:
- "ATL_PROXY_NAME=jira.backbox.com"
- "ATL_PROXY_PORT=443"
- "ATL_TOMCAT_SCHEME=https"
- "ATL_TOMCAT_SECURE=true"
- "ATL_JDBC_URL=jdbc:postgresql://jiradb.internal:5432/jiradb"
- "ATL_JDBC_USER=jiradb"
- "ATL_JDBC_PASSWORD=Strong"
- "ATL_DB_DRIVER=org.postgresql.Driver"
- "ATL_DB_TYPE=postgres72"
networks:
infrastructure:
aliases:
- jira.internal
proxyserver:
container_name: proxyserver
build:
context: ./proxyserver/config/
ports:
- "80:80"
- "443:443"
networks:
- infrastructure
Jira config: /opt/atlassian/jira/conf/server.xml
<Connector port="8080"
maxThreads="100"
minSpareThreads="10"
connectionTimeout="20000"
enableLookups="false"
protocol="HTTP/1.1"
redirectPort="8443"
acceptCount="10"
secure="true"
scheme="https"
proxyName="jira.internal.com"
proxyPort="443"
relaxedPathChars="[]|"
relaxedQueryChars="[]|{}^\`"<>"
bindOnInit="false"
maxHttpHeaderSize="8192"
useBodyEncodingForURI="true"
disableUploadTimeout="true" />
Nginx revers proxy config:
server {
listen 80;
server_name jira.internal.com www.jira.internal.com;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl;
server_name jira.internal.com www.jira.internal.com;
ssl_certificate /etc/ssl/certs/jira-selfsigned.crt;
ssl_certificate_key /etc/ssl/private/jira-selfsigned.key;
location / {
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://jira.internal:8080;
client_max_body_size 10M;
}
}
The log /var/atlassian/application-data/jira/log/atlassian-jira.log :
HealthCheck:thread-7 ERROR [c.a.t.j.healthcheck.support.GadgetFeedUrlHealthCheck] An error occurred when performing the Gadget feed URL healthcheck
org.apache.http.conn.HttpHostConnectException: Connect to jira.internal.com:443 [jira.internal.com/172.18.0.5] failed: Connection refused (Connection refused)
at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:156)
This is what it says it is - the server can't reach itself over the network on jira.internal.com
Connection refused may be because it's looking at the wrong place, somewhere that it is not actually running, or that a firewall is blocking access.
Your config looks ok to me, but I'd want to check the base url is set correctly in the application, and maybe ATL PROXY NAME needs to match jira.internal.com like the others?
First of all thank you for the response .
The solution, was to set docker host name point to docker host and import certificate to java CA store .
extra_hosts:
- "jira.internal.com:host_ip_addr"
May be your solution will work too .
Now the docker go to host and resolve itself via proxy server port 443 .
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.