

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 為 Amazon ECS Linux 容器執行個體使用 HTTP Proxy
<a name="http_proxy_config"></a>

您可以設定您的 Amazon ECS 容器執行個體，針對 Amazon ECS 容器代理程式和 Docker 常駐程式使用 HTTP 代理。這在您的容器執行個體沒有透過 Amazon VPC 網際網路閘道、NAT 閘道或執行個體進行外部網路存取時會很有用。

若要設定您的 Amazon ECS Linux 容器執行個體以使用 HTTP 代理，請在啟動時 (使用 Amazon EC2 使用者資料) 設定相關檔案中的下列變數。您也可以手動編輯組態檔案，再重新啟動代理程式。

`/etc/ecs/ecs.config` (Amazon Linux 2 與 Amazon Linux AMI)    
`HTTP_PROXY=10.0.0.131:3128`  
將此數值設為要讓 Amazon ECS 代理程式連線到網際網路的 HTTP 代理之主機名稱 (或 IP 地址) 及連接埠號碼。例如，您的容器執行個體可能沒有透過 Amazon VPC 網際網路閘道、NAT 閘道或執行個體的外部網路存取。  
`NO_PROXY=169.254.169.254,169.254.170.2,/var/run/docker.sock`  
將此值設為 `169.254.169.254,169.254.170.2,/var/run/docker.sock`，篩選 EC2 執行個體中繼資料、任務的 IAM 角色，以及來自代理的 Docker 常駐程式流量。

`/etc/systemd/system/ecs.service.d/http-proxy.conf` (僅限 Amazon Linux 2)    
`Environment="HTTP_PROXY=10.0.0.131:3128/"`  
將此數值設為要讓 `ecs-init` 連線到網際網路的 HTTP 代理之主機名稱 (或 IP 地址) 及連接埠號碼。例如，您的容器執行個體可能沒有透過 Amazon VPC 網際網路閘道、NAT 閘道或執行個體的外部網路存取。  
`Environment="NO_PROXY=169.254.169.254,169.254.170.2,/var/run/docker.sock"`  
將此值設為 `169.254.169.254,169.254.170.2,/var/run/docker.sock`，篩選 EC2 執行個體中繼資料、任務的 IAM 角色，以及來自代理的 Docker 常駐程式流量。

`/etc/init/ecs.override` (僅限 Amazon Linux AMI)    
`env HTTP_PROXY=10.0.0.131:3128`  
將此數值設為要讓 `ecs-init` 連線到網際網路的 HTTP 代理之主機名稱 (或 IP 地址) 及連接埠號碼。例如，您的容器執行個體可能沒有透過 Amazon VPC 網際網路閘道、NAT 閘道或執行個體的外部網路存取。  
`env NO_PROXY=169.254.169.254,169.254.170.2,/var/run/docker.sock`  
將此值設為 `169.254.169.254,169.254.170.2,/var/run/docker.sock`，篩選 EC2 執行個體中繼資料、任務的 IAM 角色，以及來自代理的 Docker 常駐程式流量。

`/etc/systemd/system/docker.service.d/http-proxy.conf` (僅限 Amazon Linux 2)    
`Environment="HTTP_PROXY=http://10.0.0.131:3128"`  
將此數值設為要讓 Docker 常駐程式連線到網際網路的 HTTP 代理之主機名稱 (或 IP 地址) 及連接埠號碼。例如，您的容器執行個體可能沒有透過 Amazon VPC 網際網路閘道、NAT 閘道或執行個體的外部網路存取。  
`Environment="NO_PROXY=169.254.169.254,169.254.170.2"`  
將此數值設為 `169.254.169.254,169.254.170.2`，篩選來自代理的 EC2 執行個體中繼資料。

`/etc/sysconfig/docker` (僅限 Amazon Linux AMI 和 Amazon Linux 2)    
`export HTTP_PROXY=http://10.0.0.131:3128`  
將此數值設為要讓 Docker 常駐程式連線到網際網路的 HTTP 代理之主機名稱 (或 IP 地址) 及連接埠號碼。例如，您的容器執行個體可能沒有透過 Amazon VPC 網際網路閘道、NAT 閘道或執行個體的外部網路存取。  
`export NO_PROXY=169.254.169.254,169.254.170.2`  
將此數值設為 `169.254.169.254,169.254.170.2`，篩選來自代理的 EC2 執行個體中繼資料。

設定上述檔案中的這些環境變數只會影響 Amazon ECS 容器代理、`ecs-init` 及 Docker 常駐程式。他們不會設定任何其他服務 (例如 **yum**) 使用代理。

如需有關如何設定代理的資訊，請參閱[如何在 Amazon Linux 2 或 Amazon Linux 2023 中，為 Docker 和 Amazon ECS 容器代理程式設定 HTTP Proxy](https://repost.aws/knowledge-center/ecs-http-proxy-docker-linux2)。