Doccano: Pregunta: ¿Cómo habilito SSL la aplicación doccano que se encuentra dentro del contenedor de la ventana acoplable?

Creado en 28 ago. 2019  ·  3Comentarios  ·  Fuente: doccano/doccano

Tengo una pregunta tonta, y lo siento, pero ¿cómo habilito SSL el conjunto de aplicaciones doccano dentro de un contenedor docker?

Cuando ejecuto la aplicación así:

docker run -d --rm --name doccano \
  -e "ADMIN_USERNAME=admin" \
  -e "[email protected]" \
  -e "ADMIN_PASSWORD=password" \
  -e "DEBUG=False" \
  -e "SECRET_KEY=secret-key" \
  -p 80:8000 doccano:myrebuilt

Y hago sudo netstat -tpln obtengo esto:

Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp6       0      0 :::80                   :::*                    LISTEN      32697/docker:proxy

Si escribo http://mydoccano:80/ en mi navegador web, puedo ver la aplicación Docanno. Desafortunadamente, esto no es seguro.

Así que pensé en configurar nginx en la máquina host y redirigir de 80 a 443, pero aparece este error al intentar ejecutar la imagen de la ventana acoplable:

fc310303a5710e422580f1ffd5a0f1a30
docker: Error response from daemon: driver failed programming external connectivity on endpoint doccano (fa81ff4b030a29636bc22178e75b95a9d9988984325): Error starting userland proxy: listen tcp 0.0.0.0:80: bind: address already in use.

¿Qué puedo hacer para redirigir de http:/mydoccano/ a https://mydocano/ ? ¿Debo configurar nginx dentro del contenedor de la ventana acoplable? ¿O debería poner los certificados ssl dentro del contenedor y ejecutarlo mientras paso algún tipo de parámetros ssl? ¿Alguna idea o sugerencia? ¡Gracias por adelantado!

question

Comentario más útil

Gracias a la sugerencia de @cw, finalmente hice que mi aplicación doccano funcionara con SSL.

Solo para el registro y en caso de que alguien esté interesado en saber cómo lo hice funcionar, aquí está mi configuración de Nginx en el servidor de producción:

upstream doccano_app {
    server 127.0.0.1:8080;
}

server {
    listen 80;
    listen [::]:80;
    server_name doccano.mydomain.com;

    location / {
        return 301 https://$host$request_uri;
    }
}

server { 
    listen 443 ssl;
    listing [::]443 ssl;

    server_name doccano.mydomain.com;

    ssl_certificate /etc/letsencrypt/live/doccano.mydomain.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/doccano.mydomain.com/privkey.pem;

    root /var/www/html;

    try_files $uri @docker;

    location <strong i="7">@docker</strong> {
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
          proxy_set_header Host $http_host;
          proxy_set_header X-Forwarded_Proto $scheme;
          proxy_redirect off;
          proxy_pass http://doccano_app;
  }

}

Todos 3 comentarios

Recomendaría usar nginx para terminar SSL y luego reenviar la solicitud a doccano. Tenga en cuenta que si usa doccano detrás de SSL, tendrá que configurar los ajustes mencionados en https://github.com/chakki-works/doccano/pull/350.

gracias, @cw

Gracias a la sugerencia de @cw, finalmente hice que mi aplicación doccano funcionara con SSL.

Solo para el registro y en caso de que alguien esté interesado en saber cómo lo hice funcionar, aquí está mi configuración de Nginx en el servidor de producción:

upstream doccano_app {
    server 127.0.0.1:8080;
}

server {
    listen 80;
    listen [::]:80;
    server_name doccano.mydomain.com;

    location / {
        return 301 https://$host$request_uri;
    }
}

server { 
    listen 443 ssl;
    listing [::]443 ssl;

    server_name doccano.mydomain.com;

    ssl_certificate /etc/letsencrypt/live/doccano.mydomain.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/doccano.mydomain.com/privkey.pem;

    root /var/www/html;

    try_files $uri @docker;

    location <strong i="7">@docker</strong> {
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
          proxy_set_header Host $http_host;
          proxy_set_header X-Forwarded_Proto $scheme;
          proxy_redirect off;
          proxy_pass http://doccano_app;
  }

}

¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

xuanlv2 picture xuanlv2  ·  4Comentarios

gika815 picture gika815  ·  3Comentarios

aribornstein picture aribornstein  ·  3Comentarios

attenton picture attenton  ·  3Comentarios

atakanokan picture atakanokan  ·  4Comentarios