Flazzo memiliki fokus utama untuk menambah nilai bisnis Anda.

Blog

Buat aplikasi web Flask dengan Docker

16877999-thumb.jpg
Blog

Buat aplikasi web Flask dengan Docker


Flask adalah framework web populer untuk membuat aplikasi web dengan Python. Docker adalah platform yang memungkinkan pengembang untuk mengemas dan menyebarkan aplikasi dalam wadah. Dalam tutorial ini, kita akan membahas langkah-langkah untuk membuat aplikasi web Flask menggunakan Docker.

Prasyarat

Sebelum memulai, Anda harus menginstal Docker di mesin Anda. Anda dapat mengunduh versi yang sesuai untuk sistem operasi Anda dari situs web resmi Docker. Juga, akan membantu jika Anda memiliki pemahaman dasar tentang Flask dan Python.

Membuat Aplikasi Flask

Langkah pertama adalah membuat aplikasi Flask. Kami akan membuat “Halo, Dunia!” aplikasi untuk tutorial ini. Buat file baru bernama app.py dan tambahkan kode berikut:

from flask import Flask

app = Flask(__name__)

@app.route("
def hello():
    return 'Hello, World!'

Simpan file dan arahkan ke direktorinya di terminal.

Membuat Dockerfile

Langkah selanjutnya adalah membuat Dockerfile. Dockerfile adalah skrip yang menjelaskan lingkungan tempat aplikasi akan berjalan. Kami akan menggunakan gambar resmi Python 3.8 sebagai gambar dasar untuk wadah Docker kami.

  • FROM python:3.8-slim-buster: Ini mengatur gambar dasar wadah Docker kami ke gambar resmi Python 3.8.
  • WORKDIR /app: Ini menyetel direktori kerja di dalam wadah ke /app.
  • COPY requirements.txt .: Ini menyalin requirements.txt file dari mesin lokal kami ke /app direktori di dalam wadah.
  • RUN pip install --no-cache-dir -r requirements.txt: Ini menginstal dependensi yang terdaftar di requirements.txt.
  • COPY . .: Ini menyalin seluruh direktori lokal ke dalam /app direktori di dalam wadah.
  • CMD [ "python", "app.py" ]: Ini mengatur perintah untuk dijalankan ketika wadah mulai python app.py.

Buat file baru bernama Dockerfile dan tambahkan kode berikut:

FROM python:3.8-slim-buster

# Set the working directory
WORKDIR /app

# Install dependencies
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt

# Copy the application code
COPY . .

# Run the application
CMD [ "python", "app.py" ]

Simpan Dockerfile dan arahkan ke direktorinya di terminal.

Bangun gambar Docker

Langkah selanjutnya adalah membuat image Docker dari Dockerfile. Jalankan perintah berikut untuk membuat gambar:

docker build -t my-flask-app .

Perintah ini membangun sebuah gambar bernama my-flask-app dari Dockerfile di direktori saat ini. ITU . di akhir perintah menentukan bahwa konteks build adalah direktori saat ini.

Memulai wadah Docker

Sekarang kita memiliki gambar Docker, kita dapat memulai wadah darinya. Jalankan perintah berikut untuk memulai wadah baru dari my-flask-app gambar dan petakan port 5000 pada host ke port 5000 dalam wadah:

docker run -p 5000:5000 my-flask-app

Perintah ini memulai wadah baru dari my-flask-app image dan memetakan port 5000 di host ke port 5000 di container.

Tes aplikasi vial

Terakhir, buka browser web Anda dan arahkan ke http://localhost:5000. Anda akan melihat pesan “Halo, Dunia!” pesan yang ditampilkan di browser Anda, menunjukkan bahwa aplikasi Flask sedang berjalan di aplikasi docker.

Menyesuaikan aplikasi Flask

Anda dapat menyesuaikan aplikasi Flask dengan mengubah app.py mengajukan dan membangun kembali citra Docker. Misalnya, Anda dapat mengubah hello fungsi untuk mengembalikan pesan yang berbeda:

@app.route("
def hello():
    return 'Welcome to my Flask application!'

Selamatkan app.py file dan bangun kembali gambar Docker menggunakan docker build pesanan sebelumnya. Setelah gambar dibuat, mulai wadah baru menggunakan docker run pesanan sebelumnya. Saat Anda menavigasi ke http://localhost:5000Anda akan melihat pesan yang diperbarui ditampilkan di browser Anda.

Manfaat

  • Docker menyederhanakan proses pembuatan dan penerapan aplikasi Flask karena ia menyediakan lingkungan yang konsisten dan dapat diulang di berbagai mesin dan sistem operasi.
  • Docker memungkinkan ketergantungan dan manajemen versi yang mudah, karena semua yang diperlukan untuk menjalankan aplikasi terdapat di dalam image Docker.
  • Docker memudahkan penskalaan dan penerapan aplikasi Flask, memungkinkan wadah baru dibuat dengan cepat dan mudah.

Kekurangan

  • Docker menambahkan lapisan ekstra kompleksitas pada proses pengembangan dan penerapan, yang dapat memerlukan waktu dan upaya ekstra untuk mempelajari dan mengonfigurasi.
  • Docker mungkin tidak diperlukan untuk aplikasi Flask yang kecil atau sederhana, karena manfaatnya mungkin tidak lebih besar daripada biaya tambahan dan konfigurasi.
  • Gambar dan wadah Docker dapat menghabiskan banyak ruang disk, yang dapat memengaruhi aplikasi dengan ketergantungan besar atau mesin dengan kapasitas penyimpanan terbatas.

Kesimpulan

Dalam tutorial ini, kami membahas langkah-langkah untuk membuat aplikasi web Flask menggunakan Docker. Kami membuat aplikasi Flask sederhana, menulis Dockerfile untuk mendeskripsikan lingkungan tempat aplikasi akan dijalankan, membuat image Docker dari Dockerfile, memulai container Docker dari image, dan menguji aplikasi Flask di dalam container. Dengan Docker, Anda dapat dengan mudah mengemas dan menerapkan aplikasi Flask Anda dengan cara yang konsisten dan dapat diulang, membuatnya lebih mudah untuk mengelola dan menskalakan aplikasi Anda.