2 Bước đơn Giản để Chạy Một Chương Trình Flask Python Trên Docker
Có thể bạn quan tâm
Flask cho phép bạn xây dựng các ứng dụng web từ đơn giản tới phức tạp. Nó có thể xây dựng các api nhỏ, ứng dụng web chẳng hạn như các trang web, blog, trang wiki hoặc một website dựa theo thời gian hay thậm chí là một trang web thương mại. Flask cung cấp cho bạn công cụ, các thư viện và các công nghệ hỗ trợ bạn làm những công việc trên.
Là một Micro-framework nên Flask rất gọn nhẹ, có tính độc lập và bảo mật cao do ít phụ thuộc vào các thư viện bên ngoài. Để hiểu rõ hơn, chúng ta cùng nhau cài đặt Flask và tạo thử ứng dụng đầu tiên Hello world nhé.
Ở đây mình sẽ dùng Docker để xây dựng môi trường phát triển Python để không ảnh hưởng tới môi trường thật trên máy tính của mình và cài Flask trên môi trường này.
Bước 1: Tạo môi trường phát triển Python 3 và cài đặt Flask
Trước tiên chúng ta tạo một thư mục chứa project của mình, ở đây mình sẽ đặt tên cho thư mục này là demo-flask.
Tạo file Dockerfile trong thư mục docker/python với nội dung sau:
FROM python:3.9.2-alpine WORKDIR /home/app RUN apk add --no-cache gcc musl-dev linux-headers RUN pip install Flask ENV FLASK_APP=app.py ENV FLASK_RUN_HOST=0.0.0.0 ENV FLASK_ENV=development EXPOSE 5000 COPY . . CMD ["flask", "run"]FROM: Khai báo image Python và phiên bản.Trong đó chú ý đến:
-
WORKDIR: Khai báo thư mục làm việc mặc định.
-
RUN: Dùng để chạy lệnh command.
-
ENV: Dùng khai báo biến môi trường Python cho Flask.
-
Flask sẽ được cài trong Python qua lệnh pip install Flask
Tạo file docker-compose.yml trong thư mục gốc project với nội dung sau:
version: "3.9" services: python: container_name: "SV-Python3-Flask" build: ./docker/python ports: - "5000:5000" volumes: - $PWD/backend:/home/app- Chạy lệnh docker-compose up -d để khởi tạo container.
- Chạy lệnh docker exec -it SV-Python3-Flask sh để truy cập vào container.
- Chạy lệnh flask --version để kiểm tra thử Flask đã cài thành công hay chưa.
- Nếu chưa thì có thể sử dụng command sau đây để cài Flask: pip install Flask
Ngoài cách trên, bạn cũng có thể tham khảo qua các cách cài đặt khác từ tác giả tại đây
Bước 2: Khởi tạo chương trình Hello world
Sau khi cài xong môi trường, chúng ta bắt đầu tạo ứng dụng Hello world. Như ở phần 1, lúc tạo Dockerfile chúng ta đã khai báo các biến môi trường cho ứng dụng Flask. Trong đó có khai báo file chạy mặc định là app.py tại dòng ENV FLASK_APP=app.py. Vì vậy chúng ta hãy tạo file app.py trong thư mục làm việc /app và code vào đó.
from flask import Flask app = Flask(__name__) @app.route('/') def hello_world(): return 'Hello, World!' if __name__ == '__main__': app.run()Mình sẽ giải thích từng dòng code như sau:
Dòng 1: Thực hiện import thư viện Flask. Cụ thể ở đây chúng ta import class Flask. Đây là việc cần và phải làm cho mỗi ứng dụng sử dụng Flask.
Dòng 2: Khai báo 1 thể hiện của class Flask. Nó sẽ được sử dụng xuyên suốt trong chương trình của chúng ta.
Dòng 3: Định tuyến URL truy cập thực thi hàm hello_world() ở dòng 4.
Dòng if __name__ == '__main__':: Hàm main của chương trình, trong hàm này chúng ta thêm dòng code app.run() để chương trình chúng ta lắng nghe các request từ user.
Sau khi tạo xong file chương trình, chúng ta mở link localhost:5000 để xem kết quả.
Tổng kết
Như vậy, chúng ta vừa tìm hiểu xong thư viện Flask Python là gì? Hi vọng rằng bài viết đem lại được cho bạn cái nhìn tổng quan về micro-framework Flask. Trong bài viết này, mình chủ yếu giới thiệu về Flask. Nếu bạn hứng thú thì bạn có thể tìm hiểu thêm tại đây. Chúc các bạn thành công.
Từ khóa » Thư Viện Flask
-
Flask Python Là Gì? Thư Viện Flask Trong Lập Trình Python
-
Flask Là Gì? Giới Thiệu Về Flask Của Python - T3H
-
Flask Là Gì? Bạn Biết Gì Về Framework Này?
-
Flask Trong Python Là Gì? Lý Do Nên Dùng Flask - Blog
-
7 Lý Do Bạn Nên Chọn Flask Framework - Viblo
-
[Tutorial] Hướng Dẫn Sử Dụng Thư Viện Flask Trong Python
-
Hướng Dẫn Lập Trình Flask – Phần 1: Hello World! - Thai's Tech Blog
-
Flask Python Là Gì, Tính Năng Cơ Bản Và Lý Do Vì Sao Nên Sử Dụng
-
Chi Tiết Bài Học 5. Xây Dựng Web API Với Flask - Vimentor
-
Django Dễ Hơn Flask | TopDev
-
Django Dễ Hơn Flask Là Gì Hay!, Thư Viện Flask Python Là Gì
-
Xử Lý Dữ Liệu Yêu Cầu đến Trong Flask