首页 > 解决方案 > 在 azure 上使用 nginx blacklabelops 加密

问题描述

我成功地获得了https://github.com/blacklabelops/letsencrypt和在我的 azure 虚拟机上运行的 nginx。在 Docker 中,我现在有 2 个容器。一个是我的 go 应用程序正在运行并且可以在网络上的 8080 端口上访问,一个是带有 blacklabelops 的 nginx 容器。这个绑定到端口 80 和 443。我按照 github 上的教程“Letsencrypt 和 Nginx”进行步骤 1-3,并将步骤 3 中的“ http://yourserver ”替换为我的 go 应用程序的 url 和端口 8080,其中我可以通过http访问它。

当我调用 https 和域时,什么也没有发生。端口 8080,443 和 80 在 Azure 网络安全组中打开。

你能给我一个提示吗?

更新:我可以在此处发布 _i 执行的命令。我在http://myapp.westeurope.cloudapp.azure.com:8080上运行“我的”应用程序

我执行了1:

sudo docker run -d \
-p 80:80 \
-p 443:443 \
-e "SERVER1REVERSE_PROXY_LOCATION1=/" \
-e "SERVER1REVERSE_PROXY_PASS1=172.17.0.2" \
-e "SERVER1CERTIFICATE_DNAME=/CN=Chatbot/OU=Kundenservice/O=myapp.westeurope.cloudapp.azure.com/L=Frankfurt/C=DE" \
-e "SERVER1HTTPS_ENABLED=true" \
--name nginx \
blacklabelops/nginx

比我表演的2:

sudo docker run --rm \
-p 80:80 \
-p 443:443 \
-v letsencrypt_certificates:/etc/letsencrypt \
-e "LETSENCRYPT_EMAIL=mymail@azure.com" \
-e "LETSENCRYPT_DOMAIN1=myapp.westeurope.cloudapp.azure.com" \
blacklabelops/letsencrypt install

我做了3:

sudo docker volume create letsencrypt_challenges

和 4:

    -p 443:443 \
-p 80:80 \
-v letsencrypt_certificates:/etc/letsencrypt \
-v letsencrypt_challenges:/var/www/letsencrypt \
-e "NGINX_REDIRECT_PORT80=true" \
-e "SERVER1REVERSE_PROXY_LOCATION1=/" \
-e "SERVER1REVERSE_PROXY_PASS1=http://myapp.westeurope.cloudapp.azure.com" \
-e "SERVER1HTTPS_ENABLED=true" \
-e "SERVER1HTTP_ENABLED=true" \
-e "SERVER1LETSENCRYPT_CERTIFICATES=true" \
-e "SERVER1CERTIFICATE_FILE=/etc/letsencrypt/live/myapp.westeurope.cloudapp.azure.com/fullchain.pem" \
-e "SERVER1CERTIFICATE_KEY=/etc/letsencrypt/live/myapp.westeurope.cloudapp.azure.com/privkey.pem" \
-e "SERVER1CERTIFICATE_TRUSTED=/etc/letsencrypt/live/myapp.westeurope.cloudapp.azure.com/fullchain.pem" \
--name nginx \
blacklabelops/nginx

标签: azurenginxlets-encrypt

解决方案


推荐阅读