Thứ tư, 21/12/2016 | 00:00 GMT+7

Cách cài đặt Django Web Framework trên Debian 8

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, ta sẽ chỉ cho bạn cách chạy Django trên server Debian 8. Sau khi cài đặt, ta sẽ hướng dẫn bạn cách bắt đầu một dự án mới để sử dụng làm cơ sở cho trang web .

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 Debian 8 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 Debian 8 của ta .

Khi đã sẵn sàng tiếp tục, hãy đọc phần bên dưới để quyết định phương pháp cài đặt nào phù hợp nhất cho tình huống của bạn.

Các phương pháp cài đặt có sẵn

Có một số cách khác nhau mà bạn có thể 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.

Dưới đây là một số phương pháp khác nhau:

  • Cài đặt Global từ Gói : Kho lưu trữ Debian chính thức chứa các gói Django có thể được cài đặt dễ dàng bằng trình quản lý gói apt thông thường. Điều này rất đơ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 global thông qua pip : Công cụ pip là một trình quản lý gói cho các gói Python. Nếu bạn cài đặt pip , bạn có thể dễ dàng cài đặt Django ở phạm vi hệ thống để mọi user sử dụng. Điều này phải luôn chứa bản phát hành ổn định mới nhất. Mặc dù vậy, cài đặt global vốn đã kém linh hoạt hơn.
  • Cài đặt thông qua pip trong Virtualenv : Gói Python virtualenv cho phép bạn tạo môi trường độc lập cho các dự án khác nhau. Sử dụng công nghệ này, bạn có thể cài đặt Django trong folder dự án mà không ảnh hưởng đến các gói cấp hệ thống. Điều này cho phép bạn dễ dàng cung cấp các tùy chỉnh và gói cho từng dự án. Môi trường ảo bổ sung một số chi phí quy trình và tinh thần nhỏ so với cài đặt có thể truy cập global , nhưng cung cấp tính linh hoạt nhất.
  • Phiên bản phát triển Cài đặt thông qua 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 sẽ phải lấy mã từ git repo. Điều này có thể cần thiết để nhận các tính năng / bản sửa lỗi mới nhất và có thể được thực hiện trên phạm vi global hoặc local . Tuy nhiên, các version phát triển không có cùng sự đảm bảo về độ ổn định.

Với những lưu ý và phẩm chất ở trên, hãy chọn phương pháp cài đặt phù hợp nhất với nhu cầu của bạn theo hướng dẫn bên dưới. Sau đó, hãy nhớ xem phần tạo dự án mẫu để tìm hiểu cách bắt đầu.

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 kho Debian, 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-get update

Tiếp theo, chọn version Python nào bạn muốn sử dụng với Django. Đối với Python 2 , nhập:

  • sudo apt-get install python-django

Thay vào đó, nếu bạn muốn sử dụng Python 3 với Django, hãy nhập:

  • sudo apt-get 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
1.7.11

Đ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 một chút 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 một dự án mẫu .

Cài đặt global thông qua pip

Nếu bạn muốn cài đặt version mới nhất của Django trên phạm vi global , một lựa chọn tốt hơn là sử dụng pip , trình quản lý gói Python. Đầu tiên, ta cần cài đặt trình quản lý gói pip . Cập nhật OS apt của bạn:

  • sudo apt-get update

Bây giờ, bạn có thể cài đặt các gói thích hợp và hoàn tất cài đặt. Các gói và lệnh bạn cần tùy thuộc vào version Python mà bạn định sử dụng với các dự án của bạn .

Python 2

Nếu bạn định sử dụng Python 2, hãy cài đặt pip , trình quản lý gói Python, sử dụng lệnh sau:

  • sudo apt-get install python-pip

Đến đây bạn đã có pip , bạn có thể dễ dàng cài đặt Django bằng lệnh :

  • sudo pip install django

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

  • django-admin --version
Output
1.10.4

Như bạn thấy , version có sẵn qua pip cập nhật hơn version từ kho Debian (phiên bản của bạn có thể khác với version trên).

Python 3

Nếu bạn định sử dụng Python 3 , hãy cài đặt pip bằng lệnh này:

  • sudo apt-get install python3-pip

Tiếp theo, ta có thể tận dụng trình quản lý gói pip để cài đặt Django bằng lệnh :

  • sudo pip3 install django

Để xác minh quá trình cài đặt đã hoàn tất chính xác, hãy nhập:

  • django-admin --version
Output
1.10.4

Phiên bản được cài đặt thông qua pip phải là version ổn định mới nhất (phiên bản cụ thể có thể khác với version được hiển thị ở trên).

Cài đặt Virtualenv thông qua pip

Có lẽ cách linh hoạt nhất để cài đặt Django trên hệ thống của bạn là sử dụng công cụ virtualenv . Công cụ này cho phép bạn tạo môi trường Python ảo, nơi bạn có thể cài đặt bất kỳ gói Python nào bạn muốn mà không ảnh hưởng đến phần còn lại của hệ thống. Điều này cho phép bạn chọn các gói Python trên cơ sở mỗi dự án dù xung đột với các yêu cầu của dự án khác.

Ta sẽ bắt đầu bằng cách cài đặt pip từ kho Debian. Cập nhật OS local của bạn trước khi bắt đầu:

  • sudo apt-get update

Các gói và lệnh cần thiết để cài đặt Django khác nhau tùy thuộc vào version Python mà bạn muốn sử dụng cho các dự án của bạn . Làm theo hướng dẫn bên dưới cho version Python bạn định sử dụng.

Python 2

Bước đầu tiên là cài đặt pip trên phạm vi global . Khi sử dụng Python 2, lệnh để thực hiện việc này là:

  • sudo apt-get install python-pip

Sau khi cài đặt pip , bạn có thể sử dụng nó để cài đặt gói virtualenv bằng lệnh :

  • sudo pip install virtualenv

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 ~/projectname
  • cd ~/projectname

Bây giờ, hãy tạo một môi trường ảo trong folder dự án bằng lệnh :

  • virtualenv venv

Điều này sẽ cài đặt một version độc lập của Python, cũng như pip , vào một cấu trúc folder biệt lập trong folder dự án của bạn. Ta đã chọn để gọi môi trường ảo của ta venv , nhưng bạn có thể đặt tên cho nó một cái gì đó mô tả. 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 :

  • cd ~/projectname
  • source venv/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ư ( venv )username@hostname:~/projectname$ .

Trong môi trường mới, bạn có thể sử dụng pip để cài đặt Django. 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
1.10.4

Như bạn thấy, Django đã được cài đặt trong môi trường ảo.

Lưu ý: Để thoát khỏi môi trường ảo của bạn, hãy chạy 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 lại với dự án của bạn , bạn nên 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 ~/projectname
  • source venv/bin/activate

Python 3

Bước đầu tiên là cài đặt pip trên phạm vi global . Để thực hiện việc này với Python 3, hãy nhập:

  • sudo apt-get install python3-pip

Tiếp theo, sử dụng trình quản lý gói bạn vừa cài đặt để cài đặt gói Python virtualenv :

  • sudo pip3 install virtualenv

Tiếp theo, tạo một môi trường ảo để chứa các gói cho dự án mới của bạn. Bắt đầu bằng cách tạo và chuyển vào folder dự án mới:

  • mkdir ~/projectname
  • cd ~/projectname

Tạo một môi trường ảo trong folder dự án bằng lệnh :

  • virtualenv venv

Điều này sẽ cài đặt một version độc lập của Python, cũng như pip , vào một cấu trúc folder biệt lập trong folder dự án của bạn. Một folder sẽ được tạo với tên được truyền vào làm đối số. Ta đã chọn venv ở đây. Thư mục này sẽ chứa hệ thống phân cấp file nơi các gói của bạn sẽ được cài đặt.

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

  • cd ~/projectname
  • source venv/bin/activate

Dấu nhắc lệnh của bạn bây giờ sẽ được đặt tiền tố bằng tên của môi trường ảo của bạn. Nó sẽ giống như ( venv )username@hostname:~/projectname$ .

Trong môi trường mới của bạn, hãy sử dụng pip để cài đặt Django. Lưu ý mặc dù ta đang sử dụng Python 3, lệnh trong môi trường ảo là pip (không phải pip3 ). 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
1.10.4

Như bạn thấy, Django đã được cài đặt trong môi trường ảo.

Lưu ý: Để thoát khỏi môi trường ảo của bạn, hãy chạy 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 lại với dự án của bạn , bạn nên 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 ~/projectname
  • source venv/bin/activate

Phiên bản phát triển Cài đặt thông qua git

Nếu bạn cần version phát triển của Django, bạn sẽ phải download và cài đặt Django từ repository git của dự án.

Để làm như vậy, trước tiên bạn sẽ cài đặt git trên hệ thống của bạn với apt . Ta cũng cần pip , được sử dụng để cài đặt từ mã nguồn đã download . Tên gói và lệnh phụ thuộc vào version Python mà bạn định sử dụng với Django.

Python 2

Nếu bạn đang sử dụng Python 2, bạn có thể cập nhật index gói của bạn và cài đặt các gói cần thiết bằng lệnh :

  • sudo apt-get update
  • sudo apt-get install git python-pip

Sau khi có git , bạn có thể 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 một folder có tên là django-dev trong folder chính của bạn bằng lệnh :

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

Khi repository được nhân bản, bạn có thể cài đặt nó bằng pip . Ta sẽ sử dụng tùy chọn -e để cài đặt ở chế độ “có thể chỉnh sửa”, cần thiết khi cài đặt từ kiểm soát version . Nếu bạn đang sử dụng version 2 của Python, hãy nhập:

  • sudo 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
1.11.dev20161220175814

Lưu ý bạn có thể kết hợp chiến lược này với virtualenv nếu bạn muốn cài đặt version phát triển của Django trong một môi trường duy nhất.

Python 3

Nếu bạn đang sử dụng Python 3 , hãy cập nhật index gói của bạn và cài đặt gitpip bằng lệnh :

  • sudo apt-get update
  • sudo apt-get install git python3-pip

Tiếp theo, bạn có thể sao chép repository Django vào một folder có tên là django-dev trong folder chính của bạn bằng lệnh :

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

Bạn có thể cài đặt Django trực tiếp từ folder git với pip . Tùy chọn -e cho phép ta cài đặt ở chế độ “có thể chỉnh sửa”, cần thiết khi cài đặt từ kho kiểm soát version :

  • sudo pip3 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
1.11.dev20161220175814

Nếu bạn muốn cài đặt version phát triển trong một môi trường biệt lập, bạn có thể kết hợp chiến lược này với chiến lược virtualenv .

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

Khi bạn đã cài đặt xong Django, ta có thể hướng dẫn bạn cách bắt đầu một dự án.

Kiến thức cơ bản về dự án

Sử dụng lệnh django-admin để tạo một dự án. Thao tác này sẽ tạo một folder được gọi là projectname trong folder hiện tại của bạn. Trong folder mới này, một tập lệnh quản lý sẽ được tạo và một folder khác có tên là projectname sẽ được tạo với mã thực.

Lưu ý: Nếu bạn đã có folder dự án mẹ mà bạn đã tạo để sử dụng với lệnh virtualenv , bạn có thể yêu cầu Django đặt tập lệnh quản lý và folder bên trong trực tiếp vào folder hiện có. Điều này sẽ giúp tránh thêm một lớp folder dự án.

  • cd ~/projectname
  • source venv/bin/activate
  • django-admin startproject projectname .

Lưu ý dấu chấm kết thúc ở cuối lệnh.

Để tạo cấu trúc folder đầy đủ (thư mục dự án mẹ, tập lệnh quản lý và folder dự án bên trong), hãy nhập:

  • django-admin startproject projectname
  • cd projectname

Để khởi động database (điều này sử dụng SQLite theo mặc định), hãy nhập:

  • ./manage.py migrate

Tiếp theo, tạo admin-user bằng lệnh :

  • ./manage.py createsuperuser

Bạn cần chọn tên user , địa chỉ email và password cho user .

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

Trước khi có thể kiểm tra ứ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ở file cài đặt bằng lệnh :

  • nano ~/projectname/projectname/settings.py

Bên trong, tìm chỉ thị ALLOWED_HOSTS . Điều này xác định danh sách trắng các địa chỉ hoặc domain được dùng để kết nối với version Django. Bất kỳ yêu cầu nào đến có tiêu đề Server lưu trữ không có trong danh sách này sẽ dẫn đến 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 phần trích dẫn với các mục được phân tách bằng dấu phẩy . Nếu bạn muốn trả lời các yêu cầu về 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. Trong đoạn mã dưới đây, có một số ví dụ được comment được sử dụng để chứng minh cách chính xác để định dạng mục nhập:

~ / myproject / myproject / settings.py
. . . # The simplest case: just add the domain name(s) and IP addresses of your Django server # ALLOWED_HOSTS = [ 'example.com', '203.0.113.5'] # To respond to 'example.com' and any subdomains, start the domain with a dot # ALLOWED_HOSTS = ['.example.com', '203.0.113.5'] ALLOWED_HOSTS = ['your_server_domain_or_IP', 'second_domain_or_IP', . . .] 

Khi bạn hoàn tất, hãy lưu file .

Thử nghiệm với Server Phát triển của bạn

Tiếp theo, 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.

Lưu ý: Trước khi bạn thử server phát triển, hãy đảm bảo bạn đã mở cổng trong firewall của bạn .

Nếu bạn đang chạy firewall ufw , bạn có thể mở cổng thích hợp bằng lệnh :

  • sudo ufw allow 8000

Nếu bạn đang chạy firewall iptables , lệnh chính xác bạn cần tùy thuộc vào cấu hình firewall hiện tại của bạn. Đối với hầu hết các cấu hình , lệnh này sẽ hoạt động:

  • sudo iptables -I INPUT -p tcp --dport 8000 -j ACCEPT

Khởi động server phát triển bằng lệnh :

  • ~/projectname/manage.py runserver 0.0.0.0:8000

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

http://server_ip_address:8000 

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

Trang công khai Django

Bây giờ, hãy thêm /admin vào cuối URL của bạn để truy cập trang đăng nhập administrator :

server_ip_address:8000/admin 

Đă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 đưa đến phần administrator của trang web:

Trang 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 Debian 8, 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 .


Tags:

Các tin liên quan

Cách triển khai ứng dụng web Falcon với Gunicorn và Nginx trên Ubuntu 16.04
2016-11-16
Giới thiệu về Ứng dụng web tiến bộ (PWA): Service Worker & Manifest
2016-11-10
Cách cài đặt Django Web Framework trên Ubuntu 16.04
2016-05-16
Cách triển khai ứng dụng web Clojure trên FreeBSD 10.2
2015-12-22
Cách triển khai ứng dụng web Clojure trên Ubuntu 14.04
2015-11-20
Cách thiết lập web server khả dụng cao với IP giữ và nổi trên Ubuntu 14.04
2015-10-20
Xây dựng cho Sản xuất: Ứng dụng Web - Tổng quan
2015-06-01
Xây dựng cho Sản xuất: Ứng dụng Web - Giám sát
2015-06-01
Xây dựng cho Sản xuất: Ứng dụng Web - backup
2015-06-01
Xây dựng cho Sản xuất: Ứng dụng Web - Triển khai
2015-06-01