Thứ hai, 06/07/2020 | 00:00 GMT+7

Cách cài đặt Django Web Framework trên Ubuntu 20.04

Django là một khung công tác web Python đầy đủ tính năng để phát triển các trang web và ứng dụng động. Sử dụng Django, bạn có thể nhanh chóng tạo các ứng dụng web Python và dựa vào khung công tác để thực hiện tốt các công việc nặng nhọc.

Trong hướng dẫn này, bạn sẽ cài đặt và chạy Django trên server Ubuntu 20.04. Sau khi cài đặt, bạn sẽ bắt đầu một dự án mới để sử dụng làm cơ sở cho trang web của bạn .

Các phương pháp khác nhau

Có nhiều cách khác nhau để cài đặt Django, tùy thuộc vào nhu cầu của bạn và cách bạn muốn cấu hình môi trường phát triển của bạn . Những phương pháp này có những ưu điểm khác nhau và một phương pháp có thể phù hợp với tình hình cụ thể của bạn hơn những phương pháp khác.

Một số phương pháp khác nhau bao gồm:

  • Cài đặt global từ các gói : Kho lưu trữ Ubuntu chính thức chứa các gói Django có thể được cài đặt bằng trình quản lý gói apt thông thường. Cách này tuy đơn giản nhưng không linh hoạt như một số phương pháp khác. Ngoài ra, version có trong repository lưu trữ có thể tụt hậu so với các version chính thức có sẵn từ dự án.
  • Cài đặt bằng pip trong môi trường ảo : Bạn có thể tạo một môi trường khép kín cho các dự án của bạn bằng các công cụ như venvvirtualenv . Môi trường ảo cho phép bạn cài đặt Django trong folder dự án mà không ảnh hưởng đến hệ thống lớn hơn, cùng với các tùy chỉnh và gói khác cho từng dự án. Đây thường là cách tiếp cận thực tế nhất và được đề xuất để làm việc với Django.
  • Cài đặt version phát triển bằng git : Nếu bạn muốn cài đặt version phát triển mới nhất thay vì version ổn định, bạn có thể lấy mã từ repository Git. Điều này là cần thiết để có được các tính năng / bản sửa lỗi mới nhất và có thể được thực hiện trong môi trường ảo của bạn. Tuy nhiên, các version phát triển không có sự đảm bảo ổn định như các version ổn định hơn.

Yêu cầu

Trước khi bắt đầu, bạn phải có một user không phải root có các quyền sudo trên server Ubuntu 20.04 của bạn. Để cài đặt điều này, hãy làm theo hướng dẫn cài đặt server ban đầu Ubuntu 20.04 của ta .

Cài đặt global từ các gói

Nếu bạn muốn cài đặt Django bằng cách sử dụng repository Ubuntu, quá trình này rất đơn giản.

Đầu tiên, hãy cập nhật index gói local của bạn với apt :

  • sudo apt update

Tiếp theo, hãy kiểm tra version Python nào bạn đã cài đặt. 20.04 đi kèm với Python 3.8 theo mặc định, bạn có thể xác minh bằng lệnh :

  • python3 -V

Bạn sẽ thấy kết quả như thế này:

Output
Python 3.8.2

Tiếp theo, cài đặt Django:

  • sudo apt install python3-django

Bạn có thể kiểm tra xem cài đặt có thành công hay không bằng lệnh :

  • django-admin --version
Output
2.2.12

Điều này nghĩa là phần mềm đã được cài đặt thành công. Bạn cũng có thể nhận thấy rằng version Django không phải là version ổn định mới nhất. Để tìm hiểu thêm về cách sử dụng phần mềm, hãy bỏ qua phần trước để tìm hiểu cách tạo dự án mẫu .

Cài đặt bằng pip trong môi trường ảo

Cách linh hoạt nhất để cài đặt Django trên hệ thống của bạn là trong môi trường ảo. Ta sẽ chỉ cho bạn cách cài đặt Django trong môi trường ảo mà ta sẽ tạo bằng module venv , một phần của thư viện Python 3 tiêu chuẩn. Công cụ này cho phép bạn tạo môi trường Python ảo và cài đặt các gói Python mà không ảnh hưởng đến phần còn lại của hệ thống. Do đó, bạn có thể chọn các gói Python trên cơ sở từng dự án, dù xung đột với các yêu cầu của dự án khác.

Hãy bắt đầu bằng cách cập nhật OS local :

  • sudo apt update

Kiểm tra version Python bạn đã cài đặt:

  • python3 -V
Output
Python 3.8.2

Tiếp theo, hãy cài đặt pipvenv từ repository Ubuntu:

  • sudo apt install python3-pip python3-venv

Bây giờ, khi nào bạn bắt đầu một dự án mới, bạn có thể tạo một môi trường ảo cho nó. Bắt đầu bằng cách tạo và chuyển vào folder dự án mới:

  • mkdir ~/newproject
  • cd ~/newproject

Tiếp theo, tạo một môi trường ảo trong folder dự án bằng cách sử dụng lệnh python tương thích với version Python của bạn. Ta sẽ gọi môi trường ảo của ta là my_env , nhưng bạn nên đặt tên nó mang tính mô tả:

  • python3 -m venv my_env

Điều này sẽ cài đặt các version độc lập của Python và pip thành một cấu trúc folder bị cô lập trong folder dự án của bạn. Một folder sẽ được tạo với tên bạn chọn, sẽ chứa thứ bậc file nơi các gói của bạn sẽ được cài đặt.

Để cài đặt các gói vào môi trường cô lập, bạn phải kích hoạt nó bằng lệnh :

  • source my_env/bin/activate

Dấu nhắc của bạn sẽ thay đổi để phản ánh rằng bạn hiện đang ở trong môi trường ảo của bạn . Nó sẽ giống như ( my_env )username@hostname:~/newproject$ .

Trong môi trường mới, bạn có thể sử dụng pip để cài đặt Django. Dù version Python của bạn là gì, pip chỉ nên được gọi là pip khi bạn ở trong môi trường ảo của bạn . Cũng lưu ý bạn không cần sử dụng sudo vì bạn đang cài đặt local :

  • pip install django

Bạn có thể xác minh cài đặt bằng lệnh :

  • django-admin --version
Output
3.0.8

Lưu ý version của bạn có thể khác với version được hiển thị ở đây.

Để rời khỏi môi trường ảo của bạn , bạn cần đưa ra lệnh deactivate từ bất kỳ đâu trên hệ thống:

  • deactivate

Dấu nhắc của bạn sẽ trở lại màn hình thông thường. Khi bạn muốn làm việc trên dự án của bạn , hãy chạy lại môi trường ảo của bạn bằng cách chuyển trở lại folder dự án của bạn và kích hoạt:

  • cd ~/newproject
  • source my_env/bin/activate

Phiên bản phát triển Cài đặt bằng Git

Nếu bạn cần version phát triển của Django, bạn có thể download và cài đặt Django từ repository Git của nó. Hãy làm điều này từ bên trong một môi trường ảo.

Đầu tiên, hãy cập nhật index gói local :

  • sudo apt update

Kiểm tra version Python bạn đã cài đặt:

  • python3 -V
Output
Python 3.8.2

Tiếp theo, cài đặt pipvenv từ các repository chính thức:

  • sudo apt install python3-pip python3-venv

Bước tiếp theo là sao chép repository Django. Giữa các lần phát hành, repository này sẽ có nhiều tính năng cập nhật hơn và sửa lỗi với chi phí ổn định có thể xảy ra. Bạn có thể sao chép repository vào folder có tên ~/ django-dev trong folder chính của bạn bằng lệnh :

  • git clone git://github.com/django/django ~/django-dev

Thay đổi folder này:

  • cd ~/django-dev

Tạo môi trường ảo bằng lệnh python tương thích với version Python đã cài đặt của bạn:

  • python3 -m venv my_env

Kích hoạt nó:

  • source my_env/bin/activate

Tiếp theo, bạn có thể cài đặt repository bằng pip . Tùy chọn -e sẽ cài đặt ở chế độ “có thể chỉnh sửa”, cần thiết khi cài đặt từ kiểm soát version :

  • pip install -e ~/django-dev

Bạn có thể xác minh cài đặt thành công bằng lệnh :

  • django-admin --version
Output
3.2

, version bạn thấy được hiển thị có thể không trùng với những gì được hiển thị ở đây.

Đến đây bạn có version Django mới nhất trong môi trường ảo của bạn .

Tạo một dự án mẫu

Với Django được cài đặt, bạn có thể bắt đầu xây dựng dự án của bạn . Ta sẽ xem xét cách tạo một dự án và kiểm tra nó trên server phát triển của bạn bằng cách sử dụng môi trường ảo.

Đầu tiên, tạo một folder cho dự án của bạn và thay đổi nó:

  • mkdir ~/django-test
  • cd ~/django-test

Tiếp theo, tạo môi trường ảo của bạn:

  • python3 -m venv my_env

Kích hoạt môi trường:

  • source my_env/bin/activate

Cài đặt Django:

  • pip install django

Để xây dựng dự án của bạn, bạn có thể sử dụng django-admin với lệnh startproject . Ta sẽ gọi dự án của bạn là djangoproject , nhưng bạn có thể thay thế dự án này bằng một tên khác. startproject sẽ tạo một folder trong folder làm việc hiện tại của bạn bao gồm:

  • Một kịch bản quản lý, manage.py , mà bạn có thể sử dụng để quản lý các nhiệm vụ Django cụ thể khác nhau.
  • Một folder (có cùng tên với dự án) bao gồm mã dự án thực tế.

Tuy nhiên, để tránh có quá nhiều folder lồng nhau, hãy yêu cầu Django đặt tập lệnh quản lý và folder bên trong folder hiện tại (lưu ý dấu chấm kết thúc):

  • django-admin startproject djangoproject .

Để di chuyển database (ví dụ này sử dụng SQLite theo mặc định), hãy sử dụng lệnh migrate với manage.py . Việc di chuyển áp dụng bất kỳ thay đổi nào bạn đã thực hiện đối với các mô hình Django vào schemas database của bạn.

Để di chuyển database , hãy nhập:

  • python manage.py migrate

Bạn sẽ thấy kết quả như sau:

Output
Operations to perform: Apply all migrations: admin, auth, contenttypes, sessions Running migrations: Applying contenttypes.0001_initial... OK Applying auth.0001_initial... OK Applying admin.0001_initial... OK Applying admin.0002_logentry_remove_auto_add... OK Applying admin.0003_logentry_add_action_flag_choices... OK Applying contenttypes.0002_remove_content_type_name... OK Applying auth.0002_alter_permission_name_max_length... OK Applying auth.0003_alter_user_email_max_length... OK Applying auth.0004_alter_user_username_opts... OK Applying auth.0005_alter_user_last_login_null... OK Applying auth.0006_require_contenttypes_0002... OK Applying auth.0007_alter_validators_add_error_messages... OK Applying auth.0008_alter_user_username_max_length... OK Applying auth.0009_alter_user_last_name_max_length... OK Applying sessions.0001_initial... OK

Cuối cùng, hãy tạo một admin-user để bạn có thể sử dụng giao diện quản trị Djano . Hãy làm điều này với lệnh createsuperuser :

  • python manage.py createsuperuser

Bạn sẽ được yêu cầu nhập tên user , địa chỉ email và password cho user của bạn.

Sửa đổi ALLOWED_HOSTS trong Cài đặt Django

Để kiểm tra thành công ứng dụng của bạn , bạn cần sửa đổi một trong các chỉ thị trong cài đặt Django.

Mở file cài đặt bằng lệnh :

  • nano ~/django-test/djangoproject/settings.py

Bên trong, tìm chỉ thị ALLOWED_HOSTS . Điều này xác định một danh sách các địa chỉ hoặc domain được dùng để kết nối với version Django. Một yêu cầu đến có tiêu đề Server lưu trữ không có trong danh sách này sẽ tạo ra một ngoại lệ. Django yêu cầu bạn cài đặt điều này để ngăn chặn một lớp lỗ hổng bảo mật nhất định.

Trong dấu ngoặc vuông, liệt kê các địa chỉ IP hoặc domain được liên kết với server Django của bạn. Mỗi mục nên được liệt kê trong trích dẫn, với các mục nhập riêng biệt được phân tách bằng dấu phẩy. Nếu bạn muốn có các yêu cầu cho toàn bộ domain và bất kỳ domain phụ nào, hãy thêm một khoảng thời gian vào đầu mục nhập:

~ / django-test / djangoproject / settings.py
ALLOWED_HOSTS = ['your_server_ip_or_domain', 'your_second_ip_or_domain', . . .] 

Khi bạn hoàn tất, hãy lưu file và thoát khỏi editor .

Kiểm tra Server Phát triển

Sau khi có user , bạn có thể khởi động server phát triển Django để xem một dự án Django mới trông như thế nào. Bạn chỉ nên sử dụng nó cho các mục đích phát triển. Khi đã sẵn sàng triển khai, hãy đảm bảo tuân theo các nguyên tắc triển khai của Django một cách cẩn thận.

Trước khi dùng thử server phát triển, hãy đảm bảo bạn mở cổng thích hợp trong firewall của bạn . Nếu bạn đã làm theo hướng dẫn cài đặt server ban đầu và đang sử dụng UFW, bạn có thể mở cổng 8000 bằng lệnh :

  • sudo ufw allow 8000

Khởi động server phát triển:

  • python manage.py runserver your_server_ip:8000

Truy cập địa chỉ IP của server của bạn, sau đó là :8000 trong trình duyệt web :

http://your_server_ip:8000 

Bạn sẽ thấy một cái gì đó giống như sau:

Trang công khai Django

Để truy cập giao diện quản trị, hãy thêm /admin/ vào cuối URL của bạn:

http://your_server_ip:8000/admin/ 

Thao tác này sẽ đưa bạn đến màn hình đăng nhập:

Đăng nhập quản trị Django

Nếu bạn nhập tên user và password administrator mà bạn vừa tạo, bạn sẽ có quyền truy cập vào phần quản trị chính của trang web:

Trang quản trị Django

Để biết thêm thông tin về cách làm việc với giao diện quản trị Django, vui lòng xem “Cách bật và kết nối giao diện quản trị Django.”

Khi xem xong trang web mặc định, bạn có thể dừng server phát triển bằng lệnh CTRL-C vào terminal của bạn .

Dự án Django bạn đã tạo cung cấp cơ sở cấu trúc để thiết kế một trang web hoàn chỉnh hơn. Xem tài liệu Django để biết thêm thông tin về cách xây dựng các ứng dụng và tùy chỉnh trang web .

Kết luận

Đến đây bạn đã cài đặt Django trên server Ubuntu 20.04 của bạn , cung cấp các công cụ chính bạn cần để tạo các ứng dụng web mạnh mẽ. Bạn cũng nên biết cách bắt đầu một dự án mới và chạy server của nhà phát triển. Tận dụng một khung web hoàn chỉnh như Django có thể giúp phát triển nhanh hơn, cho phép bạn chỉ tập trung vào các khía cạnh độc đáo của ứng dụng của bạn .

Nếu bạn muốn biết thêm thông tin về cách làm việc với Django, bao gồm các cuộc thảo luận chuyên sâu về những thứ như mô hìnhchế độ xem , vui lòng xem loạt bài phát triển Django của ta .


Tags:

Các tin liên quan

Cách tạo chế độ xem để phát triển web Django
2020-05-14
Cách tạo chế độ xem để phát triển web Django
2020-05-14
Cách tạo ứng dụng web bằng Flask trong Python 3
2020-04-16
Cách tạo web server trong Node.js bằng module HTTP
2020-04-10
Mã thông báo web JSON (JWT) trong Express.js
2020-02-19
Phát triển bản địa với API thông báo web
2020-02-12
Cách tạo ứng dụng chuyển văn bản thành giọng nói với API giọng nói trên web
2019-12-12
Cách tạo băng chuyền image danh mục đầu tư với các thanh trượt được đồng bộ hóa trên trang web
2019-12-12
Cách tạo thông báo trên web bằng kênh Laravel và Pusher
2019-12-12
Khả năng truy cập web cho người mới bắt đầu
2019-12-12