Doccano: السؤال: كيف يمكنني SSL تمكين تطبيق doccano الذي يعيش داخل حاوية عامل الإرساء؟

تم إنشاؤها على ٢٨ أغسطس ٢٠١٩  ·  3تعليقات  ·  مصدر: doccano/doccano

لدي سؤال سخيف ، وأنا آسف لذلك ، ولكن كيف يمكنني تمكين SSL لتطبيق doccano الموجود داخل حاوية عامل إرساء؟

عندما أقوم بتشغيل التطبيق مثل هذا:

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

وأنا أفعل sudo netstat -tpln أحصل على هذا:

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

إذا قمت بكتابة http://mydoccano:80/ في متصفح الويب الخاص بي ، يمكنني رؤية تطبيق Docanno. للأسف هذا غير آمن.

لذلك فكرت في إعداد nginx في الجهاز المضيف وإعادة التوجيه من 80 إلى 443 لكنني تلقيت هذا الخطأ عند محاولة تشغيل صورة عامل الإرساء:

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.

ما الذي يمكنني فعله لإعادة التوجيه من http:/mydoccano/ إلى https://mydocano/ ؟ هل يجب أن أقوم بإعداد nginx داخل حاوية عامل الإرساء؟ أم يجب أن أضع شهادات SSL داخل الحاوية وأقوم بتشغيلها أثناء تمرير نوع من معلمات ssl؟ أي أفكار أو مؤشرات؟ شكرا لك مقدما!

question

التعليق الأكثر فائدة

بفضل اقتراحcw ، جعلت تطبيق doccano الخاص بي يعمل مع SSL.

فقط للتسجيل وفي حالة اهتمام شخص ما بمعرفة كيفية عملها ، فإليك تكوين Nginx الخاص بي في خادم الإنتاج:

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;
  }

}

ال 3 كومينتر

أوصي باستخدام nginx لإنهاء SSL ثم إعادة توجيه الطلب إلى doccano. لاحظ أنه إذا كنت تستخدم doccano خلف SSL ، فسيتعين عليك تكوين الإعدادات المذكورة في https://github.com/chakki-works/doccano/pull/350.

شكرا ،cw

بفضل اقتراحcw ، جعلت تطبيق doccano الخاص بي يعمل مع SSL.

فقط للتسجيل وفي حالة اهتمام شخص ما بمعرفة كيفية عملها ، فإليك تكوين Nginx الخاص بي في خادم الإنتاج:

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;
  }

}

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات

القضايا ذات الصلة

BrambleXu picture BrambleXu  ·  4تعليقات

johnmccain picture johnmccain  ·  4تعليقات

attenton picture attenton  ·  3تعليقات

callmeashish picture callmeashish  ·  3تعليقات

JordanSimba picture JordanSimba  ·  4تعليقات