microsoft / CloudAdoptionFramework

Code samples and extended documentation to support the guidance provided in the Microsoft Cloud Adoption Framework
https://aka.ms/CAF
Creative Commons Attribution 4.0 International
854 stars 614 forks source link

How to Make AzureNamingTool to Listen HTTPS Port #163

Closed INPRASHANDHI closed 1 year ago

INPRASHANDHI commented 1 year ago

Hello @BryanSoltis/ Anyone can help.

I have build the AzureNamingtool Image and its working fine now. But when I try to access like https:// its not working

I want to know how we can make azurenamingtool to listen https port.

I have created a docker compose file and its working as it should be for http but for https its not working . and other nginx setup is working as it should be.

Can Anyone can help on this ?

BryanSoltis commented 1 year ago

Hello @INPRASHANDHI,

You will need to update your Docker environment with a certificate and execute a different command to host the tool on HTTPS.

Here is a guide on how to host a Docker site on HTTPS:

https://learn.microsoft.com/en-us/aspnet/core/security/docker-https?view=aspnetcore-6.0

You will need to:

Here is an example command I used to host the site on HTTPS:

docker run --rm -it -p 8000:80 -p 8001:443 -e ASPNETCORE_URLS="https://+;http://+" -e ASPNETCORE_HTTPS_PORT=8001 -e ASPNETCORE_KestrelCertificatesDefault__Password="" -e ASPNETCORE_KestrelCertificatesDefault__Path=/https/aspnetapp.pfx -v %USERPROFILE%.aspnet\https:/https/ --mount source=azurenamingtoolvol,target=/app/settings azurenamingtool:latest

image

Hope this helps!

-Bryan

INPRASHANDHI commented 1 year ago

Hi @BryanSoltis I tried with the guide and I am using the docker compose for https and when I am following that I am receiving some warning and so its not working.

The message I receive is :

warn: Microsoft.AspNetCore.DataProtection.Repositories.FileSystemXmlRepository[60] Storing keys in a directory '/root/.aspnet/DataProtection-Keys' that may not be persisted outside of the container. Protected data will be unavailable when container is destroyed. info: Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager[62] User profile is available. Using '/root/.aspnet/DataProtection-Keys' as key repository; keys will not be encrypted at rest. info: Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager[58] Creating key {6f4628dc-f2fc-45a4-ae28-9a56a74453fe} with creation date 2023-05-24 15:23:47Z, activation date 2023-05-24 15:23:47Z, and expiration date 2023-08-22 15:23:47Z.

INPRASHANDHI commented 1 year ago

This is the docker compose file I am using:

version: "3"

services: aznamingtool: image: azurenamingtool:latest expose:

INPRASHANDHI commented 1 year ago

Am I missing anything here ?,,,

BryanSoltis commented 1 year ago

I'm not sure what the file may be lacking, as I'm not an expert in docker/docker compose. I did find documentation on using a .NET 6 application with HTTPS and Docker Compose here that may be helpful:

https://learn.microsoft.com/en-us/aspnet/core/security/docker-compose-https?view=aspnetcore-6.0

As I showed in the screen shot above, the docker run command will launch the site without error. When I went through the process, I downloaded the source code and ran the commands to build/run the site with no modifications and it worked properly.

I suspect there is something in your environment that is preventing the site from launching, or you Docker compose file needs to be updated.

-Bryan

INPRASHANDHI commented 1 year ago

Yes Sure @BryanSoltis , One Quick Question I have when we can expect AzureNamingTool Offcial Image in Docker Hub. Any timeline you guys have in your roadmap. Thank You.

INPRASHANDHI commented 1 year ago

Can you also share some docs to learn about different features and other stuffs related to AzureNamingTool

BryanSoltis commented 1 year ago

We are still in the process of getting the image part of mcr.microsoft.com. It's a long and complicated process that requests several actions by different teams. We will make an announcement once the process is complete.

For documentation the site contains information on each page, via the Documentation link in the top right. Additionally, the GitHub repo contains videos, tutorials, and links to blog posts about the tool.

Overview | Installation | Updating | Using the API | Release Notes | Version History | FAQ | Contributors