Ich versuche, eine App mit Hilfe der Cloud-Foundry zu implementieren, um diesen Fehler zu bekommen und die App stürzt ab. Ich habe versucht, das Buildpack zu ändern, aber nichts passiert.Cloud Gießerei Django exit_status = -1
Ich weiß nicht, wie man mehr Fehler bekommt.
cf Protokolle gibt diese Protokoll
OUT Submodule 'compile-extensions' (https://github.com/cloudfoundry/compile-extensions.git) registered for path 'compile-extensions'
2017-02-25T11:08:59.56-0300 [STG/0] ERR Cloning into 'compile-extensions'...
2017-02-25T11:09:00.23-0300 [STG/0] OUT Submodule path 'compile-extensions': checked out 'a76a1ecab87f514248222e50fdc9f46c37078109'
2017-02-25T11:09:00.39-0300 [STG/0] OUT -------> Buildpack version 1.5.15
2017-02-25T11:09:13.34-0300 [STG/0] OUT $ pip install -r requirements.txt
2017-02-25T11:09:48.99-0300 [STG/16] OUT -----> Uploading droplet (159M)
2017-02-25T11:10:16.77-0300 [DEA/16] OUT Starting app instance (index 0) with guid a627703f-3fc8-48a2-869c-572b2abec573
2017-02-25T11:10:26.87-0300 [API/0] OUT App instance exited with guid a627703f-3fc8-48a2-869c-572b2abec573 payload: {"cc_partition"=>"default", "droplet"=>"a627703f-3fc8-48a2-869c-572b2abec573", "version"=>"3ead9c26-4535-4dbd-b3ce-d21483bae661", "instance"=>"cb6eda1feaf647aead2e9ef6c2d435b6", "index"=>0, "reason"=>"CRASHED", "exit_status"=>-1, "exit_description"=>"failed to start", "crash_timestamp"=>1488031826}
mein manifest.yml ist diese
---
applications:
- name: cs
instances: 1
command: bash run.sh
memory: 200M
disk_quota: 256M
random-route: false
buildpack: https://github.com/cloudfoundry/python-buildpack.git
meine procfile diese Linie hat
web: python cs/manage.py migrate && python cs/manage.py runserver 0.0.0.0:$PORT --noreload
und die run.sh hat
#!/bin/bash
if [ -z "$VCAP_APP_PORT" ];
then SERVER_PORT=5000;
else SERVER_PORT="$VCAP_APP_PORT";
fi
python manage.py makemigrations
python manage.py migrate
echo [$0] Starting Django Server...
python cs/manage.py runserver --noreload 0.0.0.0:$SERVER_PORT
Die gleiche App, die es auf Heroku ohne Problem eingesetzt wird, so kann ich den Unterschied zwischen Heroku auf cf nicht verstehen.
a) Ihre procfile ist nichts zu tun.. Wenn Sie in Ihrer Datei "manifest.yml" den Befehl "command" setzen, wird der Inhalt von "Procfile" überschrieben. Zur besseren Übersicht sollten Sie das eine oder andere auswählen. b.) Inszenierung scheint in Ordnung zu sein. 'pip' installiert nichts, aber es läuft alles ohne Fehler. c.) Ihre App konnte nicht gestartet werden. Es wird mit dem Exit-Code -1 beendet. Entschuldigung, aber ich kann dir nicht mehr sagen. Fügen Sie einige echo-Anweisungen zu Ihrem 'run.sh'-Skript hinzu und erhöhen Sie die Protokollebene in Ihrer App. –