Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Bootstrapping von Amazon ECS Linux-Container-Instances zur Datenübergabe
Wenn Sie eine EC2 Amazon-Instance starten, können Sie Benutzerdaten an die EC2 Instance übergeben. Die Daten können für allgemeine automatisierte Konfigurationsaufgaben und sogar zur Ausführung von Skripts beim Start der Instance verwendet werden. Für Amazon bestehen die häufigsten Anwendungsfälle für Benutzerdaten darinECS, Konfigurationsinformationen an den Docker-Daemon und den ECS Amazon-Container-Agenten zu übergeben.
Sie können mehrere Arten von Benutzerdaten an Amazon übergebenEC2, darunter Cloud-Boothooks, Shell-Skripte und cloud-init
Direktiven. Weitere Informationen zu diesen und anderen Formattypen finden Sie in der Cloud-Init-Dokumentation
Informationen zur Weitergabe der Benutzerdaten bei der Verwendung des EC2 Amazon-Startassistenten finden Sie unterStarten einer Amazon ECS Linux-Container-Instance.
Sie können die Container-Instance so konfigurieren, dass sie Daten in der Container-Agent-Konfiguration oder in der Docker-Daemon-Konfiguration weitergibt.
ECSAmazon-Containeragent
Die für Amazon ECS optimierten Linux-Varianten AMI suchen in der /etc/ecs/ecs.config
Datei nach Agentenkonfigurationsdaten, wenn der Container-Agent gestartet wird. Sie können diese Konfigurationsdaten beim Start mit EC2 Amazon-Benutzerdaten angeben. Weitere Informationen zu verfügbaren Konfigurationsvariablen für ECS Amazon-Container-Agenten finden Sie unterKonfiguration des ECS Amazon-Container-Agenten.
Wenn Sie nur eine einzelne Agent-Konfigurationsvariable wie z. B. den Clusternamen festlegen möchten, kopieren Sie die Variable mit dem Befehl echo in die Konfigurationsdatei:
#!/bin/bash echo "ECS_CLUSTER=
MyCluster
" >> /etc/ecs/ecs.config
Wenn Sie mehrere Variablen in /etc/ecs/ecs.config
schreiben müssen, verwenden Sie hierfür das folgende heredoc
-Format. Bei Verwendung dieses Formats wird alles zwischen den Zeilen cat und EOF
in die Konfigurationsdatei geschrieben.
#!/bin/bash cat <<'EOF' >> /etc/ecs/ecs.config
ECS_CLUSTER=MyCluster ECS_ENGINE_AUTH_TYPE=docker ECS_ENGINE_AUTH_DATA={"https://index.docker.io/v1/":{"username":"my_name","password":"my_password","email":"email@example.com"}} ECS_LOGLEVEL=debug
ECS_WARM_POOLS_CHECK=true
EOF
Um benutzerdefinierte Instance-Attribute festzulegen, legen Sie die ECS_INSTANCE_ATTRIBUTES
-Umgebungsvariable fest.
#!/bin/bash cat <<'EOF' >> ecs.config ECS_INSTANCE_ATTRIBUTES={"envtype":"prod"} EOF
Docker-Daemon
Sie können die Konfigurationsinformationen des Docker-Daemons mit EC2 Amazon-Benutzerdaten angeben. Weitere Informationen zu Konfigurationsoptionen finden Sie in der Docker-Daemon-Dokumentation
Im folgenden Beispiel werden die benutzerdefinierten Optionen zur Konfigurationsdatei des Docker-Daemons, /etc/docker/daemon.json
, hinzugefügt, die dann in den Benutzerdaten angegeben wird, wenn die Instance gestartet wird.
#!/bin/bash cat <<EOF >/etc/docker/daemon.json {"debug": true} EOF systemctl restart docker --no-block
Im folgenden Beispiel werden die benutzerdefinierten Optionen zur Konfigurationsdatei des Docker-Daemons, /etc/docker/daemon.json
, hinzugefügt, die dann in den Benutzerdaten angegeben wird, wenn die Instance gestartet wird. Dieses Beispiel zeigt, wie der Docker-Proxy in der Docker-Daemon-Konfigurationsdatei deaktiviert wird.
#!/bin/bash cat <<EOF >/etc/docker/daemon.json {"userland-proxy": false} EOF systemctl restart docker --no-block