Mục lục

Không có mục lục
Tham gia kênh Telegram của CloudFly để nhận thêm ưu đãi và không bỏ lỡ bất kỳ khuyến mãi nào từ CloudFly

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

Ngày đăng: 13 tháng 3 năm 2023

Ubuntu

Giới thiệu

Django là một Python web framework đầ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 framework để thực hiện tốt công việc nặng nhọc.

Trong hướng dẫn này, bạn sẽ thiết lập và chạy Django trên máy chủ 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 mình.

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 thiết lập cấu hình môi trường phát triển của mình. 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 huống 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 toàn cầu từ các gói: Kho chính thức của Ubuntu 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. Điều này đơn giản, nhưng không linh hoạt như một số phương pháp khác. Ngoài ra, phiên bản có trong kho lưu trữ có thể tụt hậu so với các phiên bản chính thức có sẵn từ dự án.
  • Cài đặt với pip trong môi trường ảo: Bạn có thể tạo một môi trường độc lập cho các dự án của mình bằng các công cụ như venvvirtualenv. Môi trường ảo cho phép bạn cài đặt Django trong thư mục 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 mỗi dự án. Đây thường là cách tiếp cận thực tế và được đề xuất nhất để làm việc với Django.
  • Cài đặt phiên bản phát triển với git: Nếu bạn muốn cài đặt phiên bản phát triển mới nhất thay vì bản phát hành ổn định, bạn có thể lấy mã từ Git repo. Đ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 phiên bản phát triển không có cùng sự đảm bảo về độ ổn định như các phiên bản ổn định hơn.

Điều kiện tiên quyết

Trước khi bắt đầu, bạn nên có một non-root user với các đặc quyền sudo có sẵn trên máy chủ Ubuntu 20.04 của mình. Để thiết lập điều này, hãy làm theo hướng dẫn thiết lập máy chủ ban đầu Ubuntu 20.04 của chúng tôi.

Cài đặt toàn cầu từ các gói

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

Trước tiên, hãy cập nhật chỉ mục gói cục bộ của bạn bằng apt:

  1. sudo apt update

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

  1. python3 -V

Bạn sẽ thấy đầu ra như thế này:

Output
Python 3.8.2

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

  1. 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 cách gõ:

  1. django-admin --version
Output
2.2.12

Điều này có 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 phiên bản Django không phải là phiên bản ổ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 tiếp theo để tìm hiểu cách tạo dự án mẫu.

Cài đặt với 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. Chúng tôi sẽ chỉ cho bạn cách cài đặt Django trong môi trường ảo mà chúng tôi sẽ tạo bằng mô-đun 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, bất kể 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 làm mới chỉ mục gói cục bộ:

  1. sudo apt update

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

  1. python3 -V
Output
Python 3.8.2

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

  1. sudo apt install python3-pip python3-venv

Bây giờ, bất cứ 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 dự án đó. Bắt đầu bằng cách tạo và di chuyển vào một thư mục dự án mới:

  1. mkdir ~/newproject
  2. cd ~/newproject

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

  1. python3 -m venv my_env

Thao tác này sẽ cài đặt các phiên bản Python độc lập và pip vào một cấu trúc thư mục biệt lập trong thư mục dự án của bạn. Một thư mục sẽ được tạo với tên bạn chọn, thư mục này sẽ chứa cấu trúc phân cấp tệp 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 bị cô lập, bạn phải kích hoạt nó bằng cách gõ:

  1. source my_env/bin/activate

Lời 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 mình. Nó sẽ giống như (my_env)username@hostname:~/newproject$.

Trong môi trường mới của bạn, bạn có thể sử dụng pip để cài đặt Django. Bất kể phiên bản 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 mình. Cũng lưu ý rằng bạn không cần sử dụng sudo vì bạn đang cài đặt cục bộ:

  1. pip install django

Bạn có thể xác minh cài đặt bằng cách gõ:

  1. django-admin --version
Output
3.0.8

Lưu ý rằng phiên bản của bạn có thể khác với phiên bản hiển thị ở đây.

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

  1. deactivate

Lời 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 lại với dự án của mình, hãy kích hoạt lại môi trường ảo của bạn bằng cách quay trở lại thư mục dự án của bạn và kích hoạt:

  1. cd ~/newproject
  2. source my_env/bin/activate

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

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

Trước tiên, hãy cập nhật chỉ mục gói cục bộ:

  1. sudo apt update

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

  1. python3 -V
Output
Python 3.8.2

Tiếp theo, cài đặt pipvenv từ kho lưu trữ chính thức:

  1. sudo apt install python3-pip python3-venv

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

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

Thay đổi thư mục này:

  1. cd ~/django-dev

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

  1. python3 -m venv my_env

Kích hoạt nó:

  1. source my_env/bin/activate

Tiếp theo, bạn có thể cài đặt kho lưu trữ bằng pip. Tùy chọn -e sẽ cài đặt ở chế độ “editable”, cần thiết khi cài đặt từ kiểm soát phiên bản:

  1. pip install -e ~/django-dev

Bạn có thể xác minh rằng quá trình cài đặt đã thành công bằng cách nhập:

  1. django-admin --version
Output
3.2

Một lần nữa, phiên bản bạn thấy được hiển thị có thể không khớp với những gì được hiển thị ở đây.

Bây giờ bạn đã có phiên bản Django mới nhất trong môi trường ảo của mình.

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

Sau khi cài đặt Django, bạn có thể bắt đầu xây dựng dự án của mình. Chúng tôi sẽ giới thiệu cách tạo một dự án và thử nghiệm nó trên máy chủ phát triển của bạn bằng môi trường ảo.

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

  1. mkdir ~/django-test
  2. cd ~/django-test

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

  1. python3 -m venv my_env

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

  1. source my_env/bin/activate

Cài đặt Django:

  1. pip install django

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

  • Tập lệnh quản lý, manage.py, mà bạn có thể sử dụng để quản lý các tác vụ Django cụ thể khác nhau.
  • Một thư mục (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 thư mục lồng nhau, hãy yêu cầu Django đặt tập lệnh quản lý và thư mục bên trong vào thư mục hiện tại (chú ý dấu chấm kết thúc):

  1. django-admin startproject djangoproject .

Để di chuyển cơ sở dữ liệu (ví dụ này sử dụng SQLite theo mặc định), hãy sử dụng lệnh di chuyển với manage.py. 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 lược đồ cơ sở dữ liệu của mình.

Để di chuyển cơ sở dữ liệu, gõ:

  1. python manage.py migrate

Bạn sẽ thấy đầu ra 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 người dùng quản trị để bạn có thể sử dụng giao diện quản trị Django. Hãy làm điều này với lệnh createsuperuser:

  1. python manage.py createsuperuser

Bạn sẽ được nhắc nhập tên người dùng, địa chỉ email và mật khẩu cho người dùng của mình.

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 lệnh trong cài đặt Django.

Mở tệp cài đặt bằng cách gõ:

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

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

Trong dấu ngoặc vuông, hãy liệt kê các địa chỉ IP hoặc tên miền được liên kết với máy chủ 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 riêng biệt được phân tách bằng dấu phẩy. Nếu bạn muốn yêu cầu cho toàn bộ miền và bất kỳ miền 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 tệp và thoát khỏi trình chỉnh sửa của bạn.

Kiểm tra máy chủ phát triển

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

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

  1. sudo ufw allow 8000

Khởi động máy chủ phát triển:

  1. python manage.py runserver your_server_ip:8000

Truy cập địa chỉ IP của máy chủ của bạn theo sau :8000 trong trình duyệt web của bạn:

http://your_server_ip:8000

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

description image

Để 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:

description image

Nếu bạn nhập tên người dùng và mật khẩu quản trị 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:

description image

Để 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 bạn xem xong trang web mặc định, bạn có thể dừng máy chủ phát triển bằng cách nhập CTRL-C trong thiết bị đầu cuối của mình.

Dự án Django mà 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 ứng dụng và tùy chỉnh trang web của bạn.

Kết luận

Bây giờ bạn đã cài đặt Django trên máy chủ Ubuntu 20.04 của mình, 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à khởi chạy máy chủ dành cho 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 mình.

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ình và chế độ xem, vui lòng xem loạt bài phát triển Django của chúng tôi.

Tham gia kênh Telegram của CloudFly để nhận thêm ưu đãi và không bỏ lỡ bất kỳ khuyến mãi nào từ CloudFly
Chia sẻ

0 câu trả lời