Uso de um proxy HTTP para instâncias de contêiner do Linux no Amazon ECS - Amazon Elastic Container Service

Uso de um proxy HTTP para instâncias de contêiner do Linux no Amazon ECS

É possível configurar as instâncias de contêiner do Amazon ECS para usar um proxy HTTP para o agente de contêiner do Amazon ECS e o daemon do Docker. Isso é útil se suas as instâncias de contêiner não têm acesso à rede externa através de um gateway da Internet da Amazon VPC, um gateway NAT ou uma instância.

Para configurar sua instância de contêiner do Linux do Amazon ECS para usar um proxy HTTP, defina as variáveis a seguir nos arquivos relevantes no momento da inicialização (com dados de usuário do Amazon EC2). Além disso, é possível editar manualmente o arquivo de configuração e, em seguida, reiniciar o agente.

/etc/ecs/ecs.config (Amazon Linux 2 e AmazonLinux AMI)
HTTP_PROXY=10.0.0.131:3128

Defina esse valor para o nome do host (ou endereço IP) e o número de porta de um proxy HTTP a serem usados pelo agente do Amazon ECS para se conectar à Internet. Por exemplo, as instâncias de contêiner podem não ter acesso à rede externa através de um gateway da Internet da Amazon VPC, um gateway NAT ou uma instância.

NO_PROXY=169.254.169.254,169.254.170.2,/var/run/docker.sock

Defina esse valor como 169.254.169.254,169.254.170.2,/var/run/docker.sock para filtrar metadados da instância do EC2, funções do IAM para tarefas e o tráfego do daemon do Docker proveniente do proxy.

/etc/systemd/system/ecs.service.d/http-proxy.conf (somente Amazon Linux 2)
Environment="HTTP_PROXY=10.0.0.131:3128/"

Defina esse valor como o nome do host (ou endereço IP) e o número de porta de um proxy HTTP a serem usados pelo ecs-init para se conectar à Internet. Por exemplo, as instâncias de contêiner podem não ter acesso à rede externa através de um gateway da Internet da Amazon VPC, um gateway NAT ou uma instância.

Environment="NO_PROXY=169.254.169.254,169.254.170.2,/var/run/docker.sock"

Defina esse valor como 169.254.169.254,169.254.170.2,/var/run/docker.sock para filtrar metadados da instância do EC2, funções do IAM para tarefas e o tráfego do daemon do Docker proveniente do proxy.

/etc/init/ecs.override (Somente Amazon Linux AMI)
env HTTP_PROXY=10.0.0.131:3128

Defina esse valor como o nome do host (ou endereço IP) e o número de porta de um proxy HTTP a serem usados pelo ecs-init para se conectar à Internet. Por exemplo, as instâncias de contêiner podem não ter acesso à rede externa através de um gateway da Internet da Amazon VPC, um gateway NAT ou uma instância.

env NO_PROXY=169.254.169.254,169.254.170.2,/var/run/docker.sock

Defina esse valor como 169.254.169.254,169.254.170.2,/var/run/docker.sock para filtrar metadados da instância do EC2, funções do IAM para tarefas e o tráfego do daemon do Docker proveniente do proxy.

/etc/systemd/system/docker.service.d/http-proxy.conf (somente Amazon Linux 2)
Environment="HTTP_PROXY=http://10.0.0.131:3128"

Defina este valor para o nome do host (ou endereço IP) e o número de porta de um proxy HTTP a serem usados pelo daemon do Docker para se conectar à Internet. Por exemplo, as instâncias de contêiner podem não ter acesso à rede externa através de um gateway da Internet da Amazon VPC, um gateway NAT ou uma instância.

Environment="NO_PROXY=169.254.169.254"

Defina este valor como 169.254.169.254 para filtrar os metadados da instância EC2 no proxy.

/etc/sysconfig/docker (somente AMI do Amazon Linux AMI e Amazon Linux 2)
export HTTP_PROXY=http://10.0.0.131:3128

Defina este valor para o nome do host (ou endereço IP) e o número de porta de um proxy HTTP a serem usados pelo daemon do Docker para se conectar à Internet. Por exemplo, as instâncias de contêiner podem não ter acesso à rede externa através de um gateway da Internet da Amazon VPC, um gateway NAT ou uma instância.

export NO_PROXY=169.254.169.254,169.254.170.2

Defina este valor como 169.254.169.254 para filtrar os metadados da instância EC2 no proxy.

Definir essas variáveis de ambiente nos arquivos acima só afeta o agente de contêiner do Amazon ECS, ecs-init, e o daemon do Docker. Elas não configuram nenhum outro serviço (como yum) para usar o proxy.

Para obter informações sobre como configurar o proxy, consulte How do I set up an HTTP proxy for Docker and the Amazon ECS container agent in Amazon Linux 2 or AL2023.