Wie richte ich einen HTTP-Proxy für Docker und den Amazon ECS-Container-Agenten in Amazon Linux ein?
Ich möchte einen HTTP-Proxy für Docker und den Amazon Elastic Container Service (Amazon ECS)-Container-Agenten in Amazon Linux einrichten.
Kurzbeschreibung
Ergreife die folgenden Maßnahmen:
- Speichere die IP-Adresse und den Proxy-Server-Port.
- Richte einen HTTP-Proxy für den Docker-Daemon ein.
- Richte einen HTTP-Proxy für den Amazon ECS-Container-Agenten ein.
- Richte einen HTTP-Proxy für ecs-init ein. Weitere Informationen findest du unter amazon-ecs-init auf der GitHub-Website.
Hinweis: Du kannst auch Amazon Elastic Compute Cloud (Amazon EC2)-Benutzerdaten verwenden, die über ein Benutzerdatenskript verfügen, um deine Umgebungsvariablen beim Start festzulegen. Ein Benutzerdatenskript, das auf allen Linux-Versionen funktioniert, findest du unter HTTP-Proxy für Amazon ECS-Linux-Container-Instances verwenden.
Wenn du Amazon Linux 2 oder Amazon Linux 2023 verwendest, findest du weitere Informationen unter Wie richte ich einen HTTP-Proxy für Docker und den Amazon ECS-Container-Agenten in Amazon Linux 2 oder Amazon Linux 2023 ein?
Hinweis: Amazon Linux 1 Amazon Machine Image (AMI) hat das Ende seiner Lebensdauer erreicht. Es ist eine bewährte Methode, auf Amazon Linux 2- oder Amazon Linux 2023-AMIs zu migrieren. Weitere Informationen findest du unter Häufig gestellte Fragen zu Amazon Linux AMI.
Lösung
IP-Adresse und Proxy-Server-Port speichern
Führe die folgenden Schritte aus:
- Verwende SSH, um eine Verbindung zu der Amazon EC2-Instance herzustellen.
- Notiere dir als Root-Benutzer die IP-Adresse und den Port des Proxy-Servers, die du später in den Umgebungsvariablen verwenden möchtest:
export PROXY_SERVER_IP=x.x.x.xexport PROXY_PORT=1234
HTTP-Proxy für den Docker-Daemon einrichten
Führe die folgenden Schritte aus:
-
Führe die folgenden Befehle mit sudo-Berechtigungen aus:
cat <<EOF >> /etc/sysconfig/docker export HTTP_PROXY=http://$PROXY_SERVER_IP:$PROXY_PORT export HTTPS_PROXY=https://$PROXY_SERVER_IP:$PROXY_PORT export NO_PROXY=169.254.169.254,169.254.170.2 EOFHinweis: HTTP_PROXY ist die Socket-Adresse (IPaddress:Port) des HTTP-Proxys, der verwendet wird, um den Amazon ECS-Container-Agenten mit dem Internet zu verbinden.
Wenn die Variable HTTP_PROXY gesetzt ist, musst du die Variable NO_PROXY auf 169.254.169.254,169.254.170.2 setzen. Diese Einstellung filtert Amazon EC2-Instance-Metadaten, AWS Identity and Access Management (IAM)-Rollen für Aufgaben und den Docker-Daemon-Datenverkehr vom Proxy.
-
Führe den folgenden Befehl aus, um Docker neu zu starten:
service docker restartHinweis: Der vorangehende Befehl stoppt alle laufenden Container. Beispielsweise stoppt es den ecs-agent auf der Container-Instance.
-
Führe den folgenden Befehl aus, um die HTTP-Proxy-Einstellungen für Docker zu überprüfen:
docker info | grep -i proxyHinweis: Die Befehlsausgabe zeigt den HTTP-Proxy und den HTTPS-Proxy.
HTTP-Proxy für den Amazon ECS-Container-Agenten einrichten
Führe die folgenden Schritte aus:
-
Füg in deiner /etc/ecs/ecs.config-Datei die Agenten-Konfigurationsparameter HTTP_PROXY und NO_PROXY hinzu.
Beispiel:cat <<EOF >> /etc/ecs/ecs.config ECS_CLUSTER=your-cluster-name HTTP_PROXY=http://$PROXY_SERVER_IP:$PROXY_PORT NO_PROXY=169.254.169.254,169.254.170.2,/var/run/docker.sock EOF -
Führe den folgenden Befehl aus, um die HTTP-Proxy-Konfigurationen auf den ecs-agent anzuwenden:
sudo start ecsHinweis: Wenn du ein für Amazon ECS optimiertes AMI verwendest, läuft der Amazon ECS-Container-Agent standardmäßig über ecs-init.
-
Führe den folgenden Befehl aus, um die HTTP-Proxy-Einstellungen für Docker und den Amazon ECS-Container-Agenten zu überprüfen:
docker inspect ecs-agent | grep -i proxy
Hinweis: Die Proxy-Einstellungen werden in der Befehlsausgabe angezeigt.
HTTP-Proxy für ecs-init einrichten
Führe die folgenden Befehle mit sudo-Berechtigungen aus:
cat <<EOF > /etc/init/ecs.override env HTTP_PROXY=$PROXY_SERVER_IP:$PROXY_PORT env NO_PROXY=169.254.169.254,169.254.170.2,/var/run/docker.sock EOF
Hinweis: Die Konfiguration sowohl für Docker als auch für den Amazon ECS-Container-Agenten wirkt sich nur auf die aktuelle Instance aus. Um alle Instances in einem Cluster zu aktualisieren, erstelle eine Startkonfiguration mit Benutzerdaten und verwende eine Auto-Scaling-Gruppe, um neue Instances zu starten.
Ähnliche Informationen
Amazon ECS-Container-Agenten aktualisieren
Bootstrapping von Container-Instances zur Weitergabe von Daten
- Themen
- Containers
- Sprache
- Deutsch
Ähnliche Videos


Relevanter Inhalt
AWS OFFICIALAktualisiert vor 3 Monaten
AWS OFFICIALAktualisiert vor 3 Jahren