Dockerized jira 7.3.5 com nginx reverse proxy base url issue

1

Eu me deparo com um problema menor ao tentar configurar o Jira 7.3.5 usando um proxy reverso nginx na minha rede local. Eu uso a imagem docker cptactionhank jira juntamente com a imagem docker nginx-proxy jwilder. Tudo parece correr bem, mas desde a minha atualização para a versão 7.3.5, o Jira relata um problema com o "URL base para gadgets". Ao abrir a seção de ferramentas de suporte do painel de configuração do Jira, ele indica que "o JIRA não pode acessar a si mesmo através da URL base configurada". O resultado é que os gadgets no painel não informam seus nomes corretos.

Parece ter que fazer o reencaminhamento do tráfego para a porta 80 pela porta 8080. Quando eu configuro a URL base no Jira para a porta 8080, o problema desaparece, mas infelizmente todas as minhas URLs jira serão postfixed com a porta 8080 Tentei definir X_PROXY_PORT como 80 e tentei definir VIRTUAL_PORT também em meu ambiente de composição do docker, mas nada disso pareceu mudar muito. Eu esperava que alguém aqui tivesse experiência com essa configuração?

Aqui está o meu arquivo jira docker-compose.yml:

version: '2'

services:
  jira:
    container_name: jira
    restart: always
    image: cptactionhank/atlassian-jira-software:latest
    ports:
    - "8080:8080"
    volumes:
    - jira-data:/var/atlassian/jira
    - jira-logs-data:/opt/atlassian/jira/logs
    dns: 192.168.2.4
    expose:
    - "8080"
    hostname: jira.internal.mydomain.com
    network_mode: bridge
    environment:
    - VIRTUAL_HOST=jira.internal.mydomain.com

volumes:
  jira-data:
    external: true
  jira-logs-data:
    external: true

e aqui está o meu arquivo nginx docker-compose.yml

version: '2'

services:
  nginx:
    container_name: nginx
    restart: always
    image: jwilder/nginx-proxy
    ports:
    - "80:80"
    volumes:
    - /var/run/docker.sock:/tmp/docker.sock:ro
    - /srv/nginx-proxy/my_proxy.conf:/etc/nginx/conf.d/my_proxy.conf:ro
    dns: 192.168.2.4
    network_mode: bridge
    
por mojoritty 28.04.2017 / 17:59

2 respostas

0

Parece que encontrei a solução para o problema. Desativar as linhas 'expose: "8080"' e 'hostname: jira.internal.mydomain.com' no meu arquivo jira docker-compose parece garantir que todo o roteamento seja feito como deveria. Eu configurei o URL básico do jira apenas para o link e tudo parece funcionar corretamente.

    
por 15.05.2017 / 14:03
0

Então, você tem jira ouvindo na porta 8080 e na porta de roteamento nginx 80 a 8080? Isso esta certo?

Parece que o jira não está usando o proxy para falar consigo mesmo. Eu estou supondo que é porque está tentando o endereço IP errado e o proxy não está escutando naquele endereço. Isso é fácil de verificar com 'ss -tln' ou 'netstat -tln'

Espero que isso ajude -Dylan

atualização:

Huh, parece que você tem algo escutando na porta 8080 e algo escutando na porta 8005, mas nada escutando na porta 80. Isso me faz pensar que o nginx não está configurado corretamente. Ou você está publicando a porta 8005 como porta 80 fora do contêiner? Isso causaria o problema, porque interna ao container, a porta 80 não é nada. Eu acho que você poderia configurar uma regra de encaminhamento simples no iptables no recipiente para redirecionar a porta 80 para a porta 8005 localmente. Isso provavelmente resolveria isso. Ou apenas coloque nginx na porta 80 e publique como porta 80.

    
por 28.04.2017 / 19:44