Thứ hai, 16/05/2016 | 00:00 GMT+7

Cách cài đặt Django Web Framework trên Ubuntu 16.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, ta sẽ chỉ cho bạn cách chạy Django trên server Ubuntu 16.04. 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 .

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

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ữ Ubuntu 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 hệ thống lớn hơn. Đ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 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 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à chất lượng ở 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.

Yêu cầu

Trước khi bắt đầu, bạn nên có một user không phải root có các quyền sudo có sẵn trên server Ubuntu 16.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 16.04 của ta .

Khi đã sẵn sàng tiếp tục, hãy làm theo các bước bên dưới.

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 diễn ra 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, hãy 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.8.7

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

Đến đây bạn có thể cài đặt pip . Nếu bạn định sử dụng Python version 2, hãy cài đặt bằng các lệnh sau:

  • sudo apt-get install python-pip

Thay vào đó, nếu bạn định sử dụng Python 3, hãy sử dụng lệnh này:

  • sudo apt-get install python3-pip

Đến đây bạn đã có pip , ta có thể dễ dàng cài đặt Django. Nếu bạn đang sử dụng Python 2, có thể chạy lệnh:

  • sudo pip install django

Nếu bạn đang sử dụng Python 3, hãy sử dụng lệnh pip3 thay thế:

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

Như bạn thấy , version có sẵn thông qua pip được cập nhật nhiều hơn version từ repository Ubuntu (phiên bản của bạn có thể sẽ khác với version trên).

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

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ừ repository Ubuntu. Cập nhật OS local của bạn trước khi bắt đầu:

  • sudo apt-get update

Nếu bạn định sử dụng version Python 2, bạn có thể cài đặt pip bằng lệnh :

  • sudo apt-get install python-pip

Thay vào đó, nếu bạn dự định sử dụng version 3 của Python, bạn có thể cài đặt pip bằng lệnh :

  • sudo apt-get install python3-pip

Sau khi cài đặt pip , bạn có thể sử dụng nó để cài đặt gói virtualenv . Nếu bạn đã cài đặt Python 2 pip , có thể chạy lệnh:

  • sudo pip install virtualenv

Nếu bạn đã cài đặt version Python 3 của pip , bạn nên nhập mã này thay thế:

  • sudo pip3 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 ~/newproject
  • cd ~/newproject

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

  • virtualenv newenv

Đ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 bạn là newenv , nhưng bạn nên đặt tên cho nó là một cái gì đó mang tính 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 :

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

Trong môi trường mới, bạn có thể sử dụng pip để cài đặt Django. Dù bạn đang sử dụng version 2 hay 3 của Python, nó 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
1.9.6

Để 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 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 ~/newproject
  • source newenv/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 nó.

Để làm như vậy, bạn cần cài đặt git trên hệ thống của bạn với apt . Cập nhật OS local của bạn bằng lệnh :

  • sudo apt-get update

Bây giờ, ta có thể cài đặt git . Ta cũng sẽ cài đặt trình quản lý gói pip Python. Ta sẽ sử dụng điều này để xử lý cài đặt Django sau khi nó đã được download . Nếu bạn đang sử dụng Python 2, có thể chạy lệnh:

  • sudo apt-get install git python-pip

Nếu bạn đang sử dụng Python 3 thay vào đó, bạn nên nhập:

  • sudo apt-get install git python3-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

Nếu bạn đang sử dụng Python 3, hãy nhập:

  • 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.10.dev20160516172816

Lưu ý bạn cũng có thể kết hợp chiến lược này với việc sử dụng virtualenv ở trên 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.

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

Đến đây 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 ngắn gọn.

Làm theo các bước bên dưới phù hợp với version Python bạn đang sử dụng.

Python 2

Bạn có thể sử dụng lệnh django-admin để tạo một dự án:

  • django-admin startproject projectname
  • cd projectname

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 đó, một kịch bản 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.

Ghi chú

Nếu bạn đã ở trong folder dự án 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 vào folder hiện tại mà không có lớp bổ sung bằng lệnh vào (chú ý dấu chấm kết thúc):

  • django-admin startproject projectname .

Để khởi động database (điều này sử dụng SQLite theo mặc định) trên các version Django mới hơn, có thể chạy lệnh:

  • python manage.py migrate

Nếu lệnh migrate không hoạt động, có thể bạn đang sử dụng version Django cũ hơn. Thay vào đó, có thể chạy lệnh:

  • python manage.py syncdb

Bạn cần tạo admin-user như một phần của quá trình này. Chọn tên user , địa chỉ email và password cho user .

Nếu bạn đã sử dụng lệnh migrate ở trên, bạn cần tạo admin-user theo cách thủ công. Bạn có thể tạo admin-user bằng lệnh :

  • python manage.py createsuperuser

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

Chuyển sang phần kiểm tra với version phát triển của bạn.

Python 3

Bạn có thể sử dụng lệnh django-admin để tạo một dự án:

  • django-admin startproject projectname
  • cd projectname

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 đó, một kịch bản 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.

Ghi chú

Nếu bạn đã ở trong folder dự án 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 vào folder hiện tại mà không có lớp bổ sung bằng lệnh vào (chú ý dấu chấm kết thúc):

  • django-admin startproject projectname .

Để khởi động database (điều này sử dụng SQLite theo mặc định) trên các version Django mới hơn, có thể chạy lệnh:

  • python3 manage.py migrate

Nếu lệnh migrate không hoạt động, có thể bạn đang sử dụng version Django cũ hơn. Thay vào đó, có thể chạy lệnh:

  • python3 manage.py syncdb

Bạn cần tạo admin-user như một phần của quá trình này. Chọn tên user , địa chỉ email và password cho user .

Nếu bạn đã sử dụng lệnh migrate ở trên, bạn cần tạo admin-user theo cách thủ công. Bạn có thể tạo admin-user bằng lệnh :

  • python3 manage.py createsuperuser

Bạn sẽ được yêu cầu nhập 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 một 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 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. Trong đoạn mã dưới đây, có một vài ví dụ được comment được sử dụng để chứng minh:

~ / 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

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.

Trước khi bạn dùng 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 sử dụng UFW như trong hướng dẫn cài đặt server ban đầu, bạn có thể mở cổng thích hợp bằng lệnh :

  • sudo ufw allow 8000

Bây giờ, khởi động server phát triển.

Đối với Python 2, hãy chạy:

  • python manage.py runserver 0.0.0.0:8000

Đối với Python 3, hãy chạy:

  • python3 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

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 Ubuntu 16.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 .


Tags:

Các tin liên quan

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
Xây dựng cho sản xuất: Ứng dụng web - Ghi log tập trung
2015-06-01
Xây dựng cho Sản xuất: Ứng dụng Web - Lập kế hoạch khôi phục
2015-06-01
Cách cài đặt control panel lưu trữ web Sentora trên Ubuntu 14.04
2015-04-27