

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.

# Buildfile und Procfile
<a name="platforms-linux-extend.build-proc"></a>

Auf einigen Plattformen können Sie anpassen, wie Sie Ihre Anwendung erstellen oder vorbereiten und die Prozesse angeben, die Ihre Anwendung ausführen. In jedem einzelnen Plattformthema wird *Buildfile and/or *Procfile** ausdrücklich erwähnt, sofern die Plattform sie unterstützt. Suchen Sie nach Ihrer spezifischen Plattform unter [Elastic Beanstalk-Plattformen](concepts-all-platforms.md).

Syntax und Semantik sind für alle unterstützenden Plattformen identisch und sind wie auf dieser Seite beschrieben. Einzelne Plattformthemen erwähnen die spezifische Verwendung dieser Dateien zum Erstellen und Ausführen von Anwendungen in ihren jeweiligen Sprachen.

## Buildfile
<a name="platforms-linux-extend.build"></a>

Um einen benutzerdefinierten Build- und Konfigurationsbefehl für Ihre Anwendung anzugeben, legen Sie eine Datei mit dem Namen `Buildfile` im Stammverzeichnis Ihrer Anwendungsquelle ab. Beachten Sie beim Dateinamen die Groß- und Kleinschreibung. Verwenden Sie die folgende Syntax für Ihre `Buildfile`.

```
<process_name>: <command>
```

Der Befehl in Ihrer `Buildfile` muss folgendem regulären Ausdruck entsprechen: `^[A-Za-z0-9_-]+:\s*[^\s].*$`

Elastic Beanstalk überwacht nicht die Anwendung, die mit einer `Buildfile` ausgeführt wird. Verwenden Sie eine `Buildfile` für Befehle, die für kurze Zeiträume ausgeführt und nach Abschluss ihrer Aufgaben beendet werden. Verwenden Sie für länger dauernde Anwendungsprozesse, die nicht beendet werden sollten, eine [Procfile](#platforms-linux-extend.proc).

Alle Pfade in der `Buildfile` sind relativ zum Stammverzeichnis des Quell-Bundle. Im folgenden Beispiel einer `Buildfile` ist `build.sh` ein Shell-Skript, das sich im Stammverzeichnis des Quell-Bundle befindet.

**Example Buildfile**  

```
make: ./build.sh
```

Wenn Sie benutzerdefinierte Build-Schritte bereitstellen möchten, empfehlen wir Ihnen, für alles, außer für die einfachsten Befehle, anstelle einer `Buildfile` `predeploy`-Plattform-Hooks zu verwenden. Plattform-Hooks ermöglichen umfangreichere Skripts und eine bessere Fehlerbehandlung. Plattformhaken werden im nächsten Abschnitt beschrieben.

## Procfile
<a name="platforms-linux-extend.proc"></a>

Um benutzerdefinierte Befehle zum Starten und Ausführen der Anwendung anzugeben, legen Sie eine Datei mit dem Namen `Procfile` im Stammverzeichnis Ihrer Anwendungsquelle ab. Beachten Sie beim Dateinamen die Groß- und Kleinschreibung. Verwenden Sie die folgende Syntax für Ihre `Procfile`. Sie können einen oder mehrere Befehle angeben.

```
<process_name1>: <command1>
<process_name2>: <command2>
...
```

Jede Zeile in Ihrer `Procfile` muss folgendem regulären Ausdruck entsprechen: `^[A-Za-z0-9_-]+:\s*[^\s].*$`

Verwenden Sie eine `Procfile` für länger dauernde Anwendungsprozesse, die nicht beendet werden sollten. Elastic Beanstalk erwartet von Prozessen, die aus der `Procfile` ausgeführt werden, dass sie kontinuierlich laufen. Elastic Beanstalk überwacht diese Prozesse und startet alle Prozesse, die beendet werden, neu. Für kurz laufende Prozesse verwenden Sie eine [Buildfile](#platforms-linux-extend.build).

Alle Pfade in der `Procfile` sind relativ zum Stammverzeichnis des Quell-Bundle. Im folgenden Beispiel definiert `Procfile` drei Prozesse. Die erste, die im Beispiel `web` genannt wird, ist die *Hauptwebanwendung*.

**Example Procfile**  

```
web: bin/myserver
cache: bin/mycache
foo: bin/fooapp
```

Elastic Beanstalk konfiguriert den Proxy-Server so, dass Anforderungen an Ihre Haupt-Web-Anwendung über Port 5000 weitergeleitet werden. Sie können diese Port-Nummer konfigurieren. Eine übliche Verwendung für `Procfile` besteht darin, diese Portnummer als Befehlsargument an Ihre Anwendung zu übergeben. Einzelheiten zur Proxykonfiguration finden Sie unter. [Reverse-Proxy-Konfiguration](platforms-linux-extend.proxy.md)

Elastic Beanstalk erfasst Standardausgabe- und Fehler-Streams von `Procfile`-Prozessen in Protokolldateien. Elastic Beanstalk benennt die Protokolldateien nach dem Prozess und speichert sie in `/var/log`. Beispielsweise generiert der `web`-Prozess aus dem vorherigen Beispiel Protokolle mit den Namen `web-1.log` und `web-1.error.log` für `stdout` bzw. `stderr`.