Partilhar via


Atualizar contêineres do Windows Server

Aplica-se a: Windows Server 2025, Windows Server 2022, Windows Server 2019, Windows Server 2016

Como parte da manutenção do Windows Server todos os meses, publicamos imagens atualizadas de contêiner do Windows Server Base OS regularmente. Com essas atualizações, você pode automatizar a criação de imagens de contêiner atualizadas ou atualizá-las manualmente obtendo a versão mais recente. Os contêineres do Windows Server não têm uma pilha de serviços como o Windows Server. Não é possível obter atualizações dentro de um contêiner como faz com o Windows Server. Portanto, todos os meses reconstruímos as imagens de contêiner do sistema operacional Windows Server Base com as atualizações e publicamos as imagens de contêiner atualizadas.

Outras imagens de contêiner, como .NET ou IIS, serão reconstruídas com base nas imagens de contêiner do Base OS atualizadas e publicadas mensalmente.

Como obter atualizações de contêiner do Windows Server

Atualizamos as imagens de contentor do Windows Server Base OS de acordo com o ciclo de manutenção do Windows. As imagens de contêiner atualizadas são publicadas na segunda terça-feira de cada mês, que às vezes chamamos de nossa versão "B", com um número de prefixo baseado no mês de lançamento. Por exemplo, chamamos nossa atualização de fevereiro de "2B" e nossa atualização de março de "3B". Este evento de atualização mensal é a única versão regular que inclui novas correções de segurança.

O servidor que hospeda esses contêineres, chamado de host de contêiner ou apenas de "host", pode ser atendido durante eventos de atualização adicionais diferentes das versões "B". Para saber mais sobre a cadência de serviço de atualização do Windows, consulte o nosso post de blogue sobre a explicação das atualizações mensais do Windows.

Se você estiver mais familiarizado com o Docker Hub do que com o MCR, esta postagem do blog lhe dará uma explicação mais detalhada.

Para obter uma lista completa de imagens, versões e respetivas tags de contêiner do Windows Server Base OS, consulte os seguintes recursos no Docker Hub:

As imagens mensais do Windows Server lançadas no Azure Marketplace pela Microsoft também vêm com imagens de contêiner do SO Base pré-instaladas. Saiba mais em nossa página de preços do Windows Server Azure Marketplace. Normalmente, atualizamos essas imagens cerca de cinco dias úteis após o lançamento do "B".

Para obter uma lista completa de imagens e versões do Windows Server, consulte versão do Windows Server no Azure Marketplacehistórico de atualizações .

Compatibilidade de versões de host e contêiner

Há dois tipos de modos de isolamento para contêineres do Windows: isolamento de processo e isolamento de Hyper-V. Hyper-V isolamento é mais flexível quando se trata de compatibilidade de versões de host e contêiner. Para saber mais, consulte Compatibilidade de Versões e Modos de Isolamento. Esta seção se concentrará em contêineres isolados do processo, salvo indicação em contrário.

Quando você atualiza o host ou a imagem do contêiner com as atualizações mensais, desde que a imagem do host e do contêiner sejam suportadas (Windows Server versão 1809 ou superior), as revisões da imagem do host e do contêiner não precisam corresponder para que o contêiner seja iniciado e executado normalmente.

No entanto, você pode encontrar problemas ao usar contêineres do Windows Server com a versão de atualização de segurança de 11 de fevereiro de 2020 (também chamada de "2B") ou versões de atualização de segurança mensais posteriores. Consulte este artigo do Suporte da Microsoft para obter mais detalhes. Esses problemas resultaram de uma mudança de segurança que exigiu uma interface entre o modo de usuário e o modo kernel para mudar para garantir a segurança de seus aplicativos. Esses problemas só acontecem em contêineres isolados do processo porque os contêineres isolados do processo compartilham o modo kernel com o host do contêiner. Isso significa que as imagens de contêiner sem o componente de modo de usuário atualizado não eram seguras e incompatíveis com a nova interface segura do kernel.

Lançámos uma correção em 18 de fevereiro de 2020. Esta nova versão estabeleceu uma "nova linha de base". Esta nova linha de base segue estas regras:

  • Qualquer combinação de hosts e contentores que sejam ambos anteriores ao 2B funcionará.
  • Qualquer combinação de hosts e contêineres que estejam ambos após 2B funcionará.
  • Qualquer combinação de hosts e contêineres em lados diferentes da nova linha de base não funcionará. Por exemplo, um host 3B e um contêiner 1B não funcionarão.

Vamos usar a versão da atualização de segurança mensal de março de 2020 como exemplo para mostrar como essas novas regras de compatibilidade funcionam. Na tabela a seguir, a versão da atualização de segurança de março de 2020 é chamada de "3B", a atualização de fevereiro de 2020 é "2B" e a atualização de janeiro de 2020 é "1B".

Anfitrião Contentor Compatibilidade
3 B 3 B Sim
3 B 2 B Sim
3 B 1B ou anterior Não
2 B 3 B Sim
2B 2B Sim
2B 1B ou anterior Não
1B ou anterior 3 B Não
1B ou anterior 2 B Não
1B ou anterior 1B ou anterior Sim

Solucionar problemas de incompatibilidades de imagem de host e contentor

Antes de começar, certifique-se de se familiarizar com as informações em de compatibilidade de versão . Estas informações irão ajudá-lo a descobrir se o seu problema foi causado por patches incompatíveis. Depois de estabelecer patches incompatíveis como a causa, você pode seguir as instruções nesta seção para solucionar o problema.

Consultar a versão do host do contêiner

Se você puder acessar seu host de contêiner, poderá executar o comando ver para obter sua versão do sistema operacional. Por exemplo, se executar ver num sistema que executa o Windows Server 2019 com a versão mais recente da atualização de segurança de fevereiro de 2020, verá o seguinte:

Microsoft Windows [Version 10.0.17763.1039]
(c) 2018 Microsoft Corporation. All rights reserved.

C:\>ver

Microsoft Windows [Version 10.0.17763.1039]

Observação

O número de revisão neste exemplo é exibido como 1039, não 1040, porque a versão da atualização de segurança de fevereiro de 2020 não tinha uma versão 2B fora de banda para o Windows Server. Havia apenas uma liberação 2B fora de banda para contêineres, que tinha um número de revisão de 1040.

Se você não tiver acesso direto ao host do contêiner, consulte o administrador de TI. Se você estiver executando na nuvem, verifique o site do provedor de nuvem para descobrir qual versão do sistema operacional host do contêiner eles estão executando. Por exemplo, se você estiver usando o Serviço Kubernetes do Azure (AKS), poderá encontrar a versão do sistema operacional host nas notas de versão do AKS.

Consultar a versão da imagem do contêiner

Siga estas instruções para descobrir qual versão seu contêiner está executando:

  1. Execute o seguinte cmdlet no PowerShell:

    docker images
    

    A saída deve ser algo como isto:

    REPOSITORY                             TAG                 IMAGE ID            CREATED             SIZE
    mcr.microsoft.com/windows/servercore   ltsc2019            b456290f487c        4 weeks ago         4.84GB
    mcr.microsoft.com/windows              1809                58229ca44fa7        4 weeks ago         12GB
    mcr.microsoft.com/windows/nanoserver   1809                f519d4f3a868        4 weeks ago         251M
    
    
  2. Execute o comando docker inspect para a ID da imagem do contêiner que não está funcionando. Isto indicará qual a versão alvo da imagem do contêiner.

    Por exemplo, suponhamos que utilizamos run docker inspect para uma imagem de contentor LTSC 2019.

    docker inspect b456290f487c
    
        "Architecture": "amd64",
    
         "Os": "windows",
    
         "OsVersion": "10.0.17763.1039",
    
         "Size": 4841309825,
    
         "VirtualSize": 4841309825,
    

    Neste exemplo, a versão do sistema operacional do contêiner é mostrada como 10.0.17763.1039.

    Se você já estiver executando um contêiner, também poderá executar o comando ver dentro do próprio contêiner para obter a versão. Por exemplo, executar ver em uma imagem de contêiner Server Core do Windows Server 2019 com a versão de atualização de segurança de fevereiro de 2020 mais recente mostrará o seguinte:

    Microsoft Windows [Version 10.0.17763.1040]
    (c) 2020 Microsoft Corporation. All rights reserved.
    
    C:\>ver
    
    Microsoft Windows [Version 10.0.17763.1040]