Usando ferramentas do Visual Studio para Docker (Visual Studio no Windows)Using Visual Studio Tools for Docker (Visual Studio on Windows)

O fluxo de trabalho do desenvolvedor ao usar o Visual Studio Tools para o Docker é semelhante ao fluxo de trabalho ao usar o código do Visual Studio e a CLI do Docker (na verdade, ele se baseia a mesma CLI do Docker), mas é mais fácil de começar, simplifica o processo e fornece maior produtividade para a compilação, execução e compor tarefas.The developer workflow when using Visual Studio Tools for Docker is similar to the workflow when using Visual Studio Code and Docker CLI (in fact, it is based on the same Docker CLI), but it is easier to get started, simplifies the process, and provides greater productivity for the build, run, and compose tasks. Também é possível executar e depurar seus contêineres por meio de ações simples, como F5 e Ctrl + F5 no Visual Studio.It's also able to execute and debug your containers via simple actions like F5 and Ctrl+F5 from Visual Studio. Ainda mais, com Visual 2017 Studio, além de poder executar e depurar um único contêiner, você também pode executar e depurar um grupo de contêineres (uma solução inteira) ao mesmo tempo, se eles são definidos no mesmo arquivo de docker compose.yml no nível da solução.Even more, with Visual Studio 2017, in addition to being able to run and debug a single container, you also can run and debug a group of containers (a whole solution) at the same time if they are defined in the same docker-compose.yml file at the solution level.

Configurando seu ambiente localConfiguring your local environment

Com as versões mais recentes do Docker para Windows, é mais fácil do que nunca para desenvolver aplicativos de Docker porque a instalação é simples, conforme explicado nas seguintes referências.With the latest versions of Docker for Windows, it is easier than ever to develop Docker applications because the setup is straightforward, as explained in the following references.

Obter mais informações: para saber mais sobre como instalar o Docker para Windows, acesse https://docs.docker.com/docker-for-windows/.More info: To learn more about installing Docker for Windows, go to https://docs.docker.com/docker-for-windows/.

Se você estiver usando o Visual Studio 2015, você deve ter a atualização 3 ou uma versão posterior e o Visual Studio Tools para o Docker.If you're using Visual Studio 2015, you must have Update 3 or a later version plus the Visual Studio Tools for Docker.

Obter mais informações: para obter instruções sobre como instalar o Visual Studio, vá para https://visualstudio.microsoft.com/\ produtos/vs-2015-produto-edições.More info: For instructions on installing Visual Studio, go to https://visualstudio.microsoft.com/\ products/vs-2015-product-editions.

Para obter mais informações sobre como instalar o Visual Studio Tools para o Docker, vá para http://aka.ms/vstoolsfordocker e https://docs.microsoft.com/aspnet/core/host-and-deploy/docker/visual-studio-tools-for-docker.To see more about installing Visual Studio Tools for Docker, go to http://aka.ms/vstoolsfordocker and https://docs.microsoft.com/aspnet/core/host-and-deploy/docker/visual-studio-tools-for-docker.

Se você estiver usando o Visual Studio de 2017, o suporte de Docker já está incluído.If you're using Visual Studio 2017, Docker support is already included.

Usando ferramentas do Docker no Visual Studio 2015Using Docker Tools in Visual Studio 2015

O Visual Studio Tools para o Docker fornece uma maneira consistente para desenvolver e validar localmente os contêineres de Docker para Linux em um host Linux Docker ou VM ou os contêineres do Windows diretamente no Windows.The Visual Studio Tools for Docker provides a consistent way to develop and validate locally your Docker containers for Linux in a Linux Docker host or VM, or your Windows Containers directly on Windows.

Se você estiver usando um único contêiner, a primeira coisa que você precisa para começar é ativar o suporte de Docker em seu projeto .NET Core.If you're using a single container, the first thing you need to begin is to turn on Docker support into your .NET Core project. Para fazer isso, clique em seu arquivo de projeto, conforme mostrado na Figura 4-25.To do this, right-click your project file, as shown in Figure 4-25.

https://i1.visualstudiogallery.msdn.s-msft.com/0f5b2caa-ea00-41c8-b8a2-058c7da0b3e4/image/file/205468/1/add-docker-support.png

Figura 4-25: ativar o suporte de Docker para o seu projeto do Visual StudioFigure 4-25: Turning on Docker support for your Visual Studio project

Usando ferramentas do Docker no Visual Studio de 2017Using Docker Tools in Visual Studio 2017

Quando você adiciona suporte de Docker para um projeto de serviço em sua solução (consulte a Figura 4-26), o Visual Studio é não apenas adicionar um arquivo de DockerFile ao seu projeto, ele também está adicionando uma seção de serviço em sua solução docker compose.yml arquivos (ou criar os arquivos se eles não Existem).When you add Docker support to a service project in your solution (see Figure 4-26), Visual Studio is not just adding a DockerFile file to your project, it also is adding a service section in your solution's docker-compose.yml files (or creating the files if they didn't exist). É uma maneira fácil de começar a composição de sua solução multicontainer; Você pode abrir os arquivos de docker compose.yml e atualizá-los com recursos adicionais.It's an easy way to begin composing your multicontainer solution; you then can open the docker-compose.yml files and update them with additional features.

Figura 4-26: ativar o suporte de solução de Docker em um projeto do Visual Studio de 2017Figure 4-26: Turning on Docker Solution support in a Visual Studio 2017 project

Essa ação adiciona não apenas o DockerFile ao seu projeto, ele também adiciona linhas de código para a configuração necessária para um docker-compose.yml global definida no nível da solução.This action not only adds the DockerFile to your project, it also adds the required configuration lines of code to a global docker-compose.yml set at the solution level.

Você também pode ativar o suporte do Docker ao criar um projeto do ASP.NET Core no Visual Studio de 2017, conforme mostrado na Figura 4-27.You also can turn on Docker support when creating an ASP.NET Core project in Visual Studio 2017, as shown in Figure 4-27.

Figura 4-27: ativar o suporte do Docker ao criar um projetoFigure 4-27: Turning on Docker support when creating a project

Depois de adicionar suporte de Docker para sua solução no Visual Studio, você também verá uma nova árvore de nó no Gerenciador de soluções, com os arquivos de inclusão docker-compose.yml, conforme ilustrado na Figura 4-28.After you add Docker support to your solution in Visual Studio, you also will see a new node tree in Solution Explorer with the added docker-compose.yml files, as depicted in Figure 4-28.

Figura 4-28: arquivos de docker compose.yml agora exibidos no Gerenciador de soluçõesFigure 4-28: docker-compose.yml files now display in Solution Explorer

Você pode implantar um multicontainer aplicativo usando um arquivo único docker-compose.yml quando você executa compor docker. No entanto, o Visual Studio adiciona um grupo, para que você pode substituir valores de acordo com o ambiente (desenvolvimento e produção) e a execução de tipo (versão versus depuração).You could deploy a multicontainer application by using a single docker-compose.yml file when you run docker-compose up; however, Visual Studio adds a group of them, so you can override values depending on the environment (development versus production) and the execution type (release versus debug). Esse recurso será explicado melhor capítulos.This capability will be better explained in later chapters.

Obter mais informações: para obter mais detalhes sobre o uso de ferramentas do Visual Studio para Docker e a implementação de serviços, leia os seguintes artigos:More info: For further details on the services implementation and use of Visual Studio Tools for Docker, read the following articles:

Compilar, depurar, atualizar e atualizar aplicativos em um contêiner de Docker local: https://docs.microsoft.com/azure/vs-azure-tools-docker-edit-and-refresh/Build, debug, update, and refresh apps in a local Docker container: https://docs.microsoft.com/azure/vs-azure-tools-docker-edit-and-refresh/

Implante um contêiner do ASP.NET em um host remoto do Docker: https://docs.microsoft.com/azure/vs-azure-tools-docker-hosting-web-apps-in-docker/Deploy an ASP.NET container to a remote Docker host: https://docs.microsoft.com/azure/vs-azure-tools-docker-hosting-web-apps-in-docker/