[PYTHON] Starten Sie die Flask-Anwendung mit Docker auf Heroku

Einführung

Lassen Sie das Docker-Image vor etwa einem Monat unverändert Jetzt, da ich es für Heroku bereitstellen kann, habe ich es versucht. Es ist noch in der öffentlichen Beta.

Referenz Container registry public beta - deploy Docker images to Heroku ContainerRegistryandRuntime

Vorbereitung

Das Folgende wird unter der Annahme beschrieben, dass es bereits abgeschlossen wurde.

Quelle

Ich habe meine eigene Flask-Anwendung als Bereitstellungsziel verwendet. https://github.com/nanakenashi/image_clock

Es ist eine einfache Uhranwendung, die Bilder nach der Zeit wechselt.

image_clock/
    ├ static/
    ├ templates/
    ├ Dockerfile
    ├ app.py
    └ requirements.txt
#Verwenden Sie Alpine Linux mit Python als Basis-Image
FROM python:3.5.2-alpine

#Git Installation
RUN apk update
RUN apk add git

#Installation des Python-Pakets
ADD requirements.txt /tmp
RUN pip install -r /tmp/requirements.txt

#Platzieren Sie den Quellcode
WORKDIR /web
RUN git clone https://github.com/nanakenashi/image_clock.git clock

#Kolbenanwendung starten
ENV FLASK_APP /web/clock/app.py
CMD flask run -h 0.0.0.0 -p $PORT

Der Punkt ist der Startteil der Kolbenanwendung.

Verfahren

Vorherige Bestätigung

Stellen Sie sicher, dass der Befehl "Docker" verfügbar ist

$ docker ps

Melden Sie sich bei Heroku an.

$ heroku login

Platzierung des Quellcodes

Holen Sie sich den Quellcode von GitHub und wechseln Sie in das Verzeichnis.

$ git clone https://github.com/nanakenashi/image_clock.git ./image_clock
$ cd image_clock

Erstellen einer Heroku-Anwendung

Sichern Sie sich einen Platz für die Anwendung.

$ heroku create flask-clock-sample

Zu diesem Zeitpunkt gibt es keine Quelle, es handelt sich also nur um eine Box. Wenn Sie darauf zugreifen, sieht es so aus. ↓ Heroku___Welcome_to_your_new_app_.png

Docker Container Push

Erstellen Sie einen Container basierend auf der Docker-Datei und senden Sie ihn an das Repository.

$ heroku container:push --app flask-clock-sample web

Funktionsprüfung

$ heroku open --app flask-clock-sample

Ich konnte den Betrieb der Uhranwendung bestätigen. Clock.png

Zusammenfassung

Da die diesmal verwendete Anwendung keine Add-Ons verwendet Es war sehr einfach einzurichten und bereitzustellen.

Es scheint etwas schwieriger zu sein, eine Heroku-ähnliche Konfiguration wie DB-Verbindung und Protokollorganisation zu erstellen.

Recommended Posts

Starten Sie die Flask-Anwendung mit Docker auf Heroku
Anwendungsentwicklung mit Docker + Python + Flask
Starten Sie die Umgebung mit LineBot + Heroku + Docker + Python
Berühre Flask + laufe mit Heroku
Ausgabeprotokoll an die Konsole mit Flask + Nginx auf Docker
Starten Sie Django auf einem Docker-Container mit Docker-Compose Up
Webanwendung mit Python + Flask ② ③
Erstellen Sie eine Rails-Anwendung mit Docker
Webanwendung mit Python + Flask ④
(Fehler) Stellen Sie eine mit Flask mit Heroku erstellte Web-App bereit
Vom Umgebungsaufbau bis zum Einsatz für Kolben + Heroku mit Docker
Erstellen eines Flask-Servers mit Docker
Stellen Sie die Django-Anwendung mit Docker bereit
Stellen Sie die Django-Anwendung auf Heroku bereit
Stellen Sie die Flask-App für Heroku bereit (bitter)
Stellen Sie die Flask-App auf Heroku bereit
Code-Server-Online-Umgebung (5) Starten Sie den Code-Server auf Docker
Stellen Sie die Flask-App auf Heroku bereit
Erstellen Sie mit Chalice eine flaschen- / flaschenähnliche Webanwendung auf AWS Lambda
Verknüpfen Sie WAS- und FLASK-Anwendungen auf Docker
Schreiben Sie SVG-Diagramme mit Matplotlib mit Heroku
Einfache Web-App mit Python + Flask + Heroku
Führen Sie eine Python-Webanwendung mit Docker aus
Erstellen Sie einen Webdienst mit Docker + Flask
Erste Schritte mit Heroku, Bereitstellen der Flaschen-App
Bis die mit Flasche erstellte Webanwendung auf Heroku veröffentlicht (bereitgestellt) wird
Hochladen mit Heroku, Flask, Python, Git (4)
Pykintone auf Docker
Redis auf Heroku
Gewinnen Sie die Python + Flask-Web-App mit Jenkins
Hinweise zur Flasche
Shimehari auf Heroku
Erstellen Sie ein Bulletin Board mit Heroku, Flask, SQL Alchemy
Einstellungen der Kolbenanwendung
Starten Sie einen Webserver mit Python und Flask
Ein Memorandum zum Berühren von Python Flask mit Heroku
Bis zur Verwendung von PhantomJS mit Python auf Heroku
Aufbau einer virtuellen Umgebung mit Docker + Flask (Python) + Jupyter-Notebook
Scraping mit Python, Posting auf TwitterBot, regelmäßige Ausführung auf Heroku
Hochladen mit Heroku, Flask, Python, Git (Teil 3)
Analysieren und visualisieren Sie JSON (Webanwendung ⑤ mit Python + Flask)
Richten Sie Docker unter Oracle Linux (7.x) mit Vagrant ein
EC2-Bereitstellung mit Vagrant + Jupyter (IPython Notebook) auf Docker
Memo zur Bereitstellung von Django × Postgresql auf Docker für Heroku
Starten Sie Jupyter schnell mit Docker (Zielsprache: Anaconda / Ruby)
Hochladen mit Heroku, Flask, Python, Git (Teil 2)
Einfache Erstellung von C ++ - Code mit CMake auf Docker
Hobby Web Engineer entwickelt Webanwendung mit Vue.js + Flask (& GCP)
TFTP-Server mit Docker
Installieren Sie Docker auf Fedora31
Starten Sie Lambda mit Boto3
Verwenden Sie Python mit Docker
IP-Einschränkung mit Flask
Jsonschema-Validierung am Kolben
Hallo, Welt mit Docker
Installieren Sie Docker unter AWS
Starten Sie den Code-Server unter alpine-linux
Hallo Welt auf Flasche
Programmieren mit Python Flask
Installieren Sie Python 3.6 auf Docker