Thứ ba, 25/02/2014 | 00:00 GMT+7

Cách thiết lập server cloud Ubuntu cho ứng dụng web Python

Điện toán cloud đang định hình toàn bộ ngành công nghệ thông tin (CNTT) và Ubuntu đang ở ngay trên đó - theo đúng nghĩa đen! Với sự hỗ trợ được cung cấp cho một loạt các công cụ, thư viện và ứng dụng khác nhau, cùng với tính dễ sử dụng và cách nó làm cho các việc khó trở nên đơn giản, bản phân phối Linux tin cậy này đã trở thành lựa chọn hàng đầu của nhiều người trên con đường sử dụng trên không gian cloud công cộng.


Trong bài viết DigitalOcean này, ta sẽ tìm hiểu cách chuẩn bị một server cloud Ubuntu từ đầu để lưu trữ các ứng dụng web Python. Theo hướng dẫn này, bạn sẽ có một bản cài đặt Ubuntu vững chắc, được trang bị gần như tất cả các công cụ cần thiết để triển khai dự án Python của bạn.

Ubuntu 13.10 (Ngày phát hành: tháng 10 năm 2013)


Ta sẽ bắt đầu với việc cập nhật hệ thống, download và cài đặt các công cụ và thư viện cần thiết mà ta cần [cho Python], sau đó tạo môi trường triển khai hoàn hảo cho ứng dụng web của bạn.

Cập nhật hệ thống


Điều đầu tiên cần làm là cập nhật mọi thứ đã được vận chuyển với Ubuntu.

Hãy cập nhật danh sách nguồn phần mềm và sau đó nâng cấp các ứng dụng đã lỗi thời:

# Update the applications sources list: aptitude    update  # Upgrade the outdated applications on the system: aptitude -y upgrade 

Nhận các công cụ và thư viện hệ thống cần thiết


Tiếp theo, hãy download và cài đặt các công cụ và thư viện cần thiết sẽ được sử dụng trực tiếp hoặc hữu ích trong tương lai.

Chạy lệnh sau để cài đặt gói build-essential thiết để biên dịch mã nguồn của ứng dụng:

aptitude install -y build-essential  

Tiếp theo, bạn cần công cụ kiểm soát version nào để phát triển:

aptitude install -y cvs subversion git-core mercurial 

Để một số ứng dụng Python hoạt động, ta cũng cần một số gói Python nhất định:

aptitude install python-setuptools python-dev \                  python2.7-dev python-software-properties \                  libpq-dev 

Và cuối cùng, một số thư viện của bên thứ ba được yêu cầu cho nhiều thứ khác, chẳng hạn như xử lý hình ảnh:

aptitude install libtiff4-dev libjpeg8-dev \                  zlib1g-dev libfreetype6-dev liblcms2-dev \                  libwebp-dev tcl8.5-dev tk8.5-dev 

Nhận các công cụ Python phổ biến


Trên Ubuntu và Debian, version trình thông dịch Python gần đây - mà bạn có thể sử dụng - được cung cấp theo mặc định. Nó khiến ta chỉ có một số gói bổ sung hạn chế để cài đặt:

  • pip (để quản lý các gói);

  • virtualenv (để tạo môi trường ảo, cô lập).

Chạy các lệnh sau để cài đặt pip :

# Get pip's dependency: curl https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py | python -  # And then pip: curl https://bootstrap.pypa.io/get-pip.py | python -  # Finally, let's add it the PATH variable: export PATH="/usr/local/bin:$PATH" 

Tốt nhất là chứa một ứng dụng Python trong môi trường riêng của nó cùng với tất cả các phụ thuộc của nó. Một môi trường có thể được mô tả tốt nhất (theo thuật ngữ đơn giản) như một vị trí biệt lập (một folder ), nơi mọi thứ cư trú. Với mục đích này, một công cụ gọi là virtualenv được sử dụng.

Chạy phần sau để cài đặt virtualenv bằng pip :

pip install virtualenv   

Tạo môi trường cho ứng dụng web Python của bạn


Lưu ý: Hướng dẫn đưa ra ở đây được giữ ngắn gọn. Để tìm hiểu thêm, hãy xem bài viết hướng dẫn của ta về pipvirtualenv : Các công cụ Python phổ biến: Sử dụng virtualenv, Cài đặt bằng Pip và Quản lý các gói .

Chạy các lệnh sau để tạo môi trường ảo cho ứng dụng web python của bạn:

# Create a virtual environment: # Usage: virtualenv [main app. directory name] # Example: virtualenv django_app  # Enter the directory to start working with # the Python interpreter: # Example: cd django_app 

Sau đó, để làm việc với trình thông dịch Python bị cô lập và pip trình quản lý gói, hãy kích hoạt môi trường, ví dụ:

# Activate the *virtualenv*: source bin/activate 

Hoặc gọi trực tiếp trình thông dịch Python khi nào bạn cần làm việc với ứng dụng nằm bên trong môi trường này, ví dụ:

# Call the Python interpreter directly: # Usage: bin/python [command] # Example: bin/python manage.py runserver 0.0.0.0:8000 

Cài đặt ứng dụng của bạn


Khi mọi thứ đã sẵn sàng, bây giờ bạn có thể bắt đầu làm việc với Python và xây dựng ứng dụng web của bạn .

Dưới đây là một số ví dụ tuyệt vời:

  • Bình giữ nhiệt:

Cách triển khai các ứng dụng web Flask

Cách cấu trúc các ứng dụng flask lớn

  • Kim tự tháp:

Cách sử dụng khung kim tự tháp để xây dựng ứng dụng web Python của bạn

Cách triển khai ứng dụng web WSGI Python dựa trên kim tự tháp

  • Web2py:

Cách sử dụng khung Web2py để nhanh chóng xây dựng ứng dụng Python của bạn

  • Chai:

Cách sử dụng Khung Micro Chai để Phát triển Ứng dụng Web Python

  • Django CMS:

Cách cài đặt và cài đặt Django CMS
Cách cài đặt Django CMS version 3 Beta 3

  • Tầng lửng:

Cách cài đặt và bắt đầu với CMS tầng lửng dựa trên Django

Sẵn sàng cho Sản xuất


Server [ứng dụng] thử nghiệm đi kèm với Django không phù hợp với các kịch bản production thực tế. Trước khi đưa ứng dụng của bạn lên mạng, bạn nên download và cài đặt một server ứng dụng Python phù hợp và cấu hình nó. Tuy nhiên, đừng sợ vì nó thực sự là một quá trình rất dễ dàng.

Để quyết định server ứng dụng nào có thể phù hợp với nhu cầu của bạn nhất, hãy xem bài viết của ta : So sánh Server Web cho Ứng dụng Web dựa trên Python .

Sau khi bạn quyết định, hãy xem qua bất kỳ hướng dẫn nào sau đây để ứng dụng Mezzanine của bạn được triển khai trực tuyến một cách chắc chắn và tin cậy :

  • Gunicorn:

Cách triển khai ứng dụng WSGI Python bằng server Gunicorn HTTP đằng sau Nginx

  • uWSGI:

Cách triển khai ứng dụng WSGI Python bằng web server uWSGI với Nginx

  • CherryPy:

Cách triển khai các ứng dụng Python WSGI bằng CherryPy Web Server đằng sau Nginx

Nếu bạn đã quen với việc làm việc với Apache hoặc muốn giữ nó vì lý do nào đó, bạn có thể chọn thay thế Nginx bằng nó. Để biết cách sử dụng cài đặt Apache hiện tại của bạn làm Reverse Proxy cho bất kỳ server ứng dụng nào ở trên, hãy xem bài viết của ta : Cách sử dụng server Apache HTTP như Reverse-Proxy bằng cách sử dụng mod_proxy Extension .

<div class = “author”> Gửi bởi: <a
href = “https://twitter.com/ostezer”> Hệ điều hành Tezer </a> </div>


Tags:

Các tin liên quan

Cách cài đặt và bắt đầu với CMS Mezzanine trên Django trên Ubuntu
2014-02-25
Cách cài đặt Django CMS phiên bản 3 Beta 3 với Django 1.6 trên Ubuntu
2014-02-25
Làm thế nào để Dockerise và triển khai nhiều ứng dụng WordPress trên Ubuntu
2014-02-13
Cách cài đặt Ruby 2.1.0 và Sinatra trên Ubuntu 13 với RVM
2014-02-10
Cách tạo Sách dạy nấu ăn Đầu bếp Đơn giản để Quản lý Cơ sở hạ tầng trên Ubuntu
2014-02-03
Cách cài đặt MariaDB từ Binary Tarballs trên Ubuntu 13.10
2014-01-28
Cách thiết lập một cụm Serf trên một số VPS Ubuntu
2014-01-23
Cách cấu hình Cụm Galera với MariaDB trên server Ubuntu 12.04
2014-01-20
Cách cài đặt Neo4J trên VPS Ubuntu
2014-01-15
Cách sử dụng PM2 để thiết lập môi trường sản xuất Node.js trên VPS Ubuntu
2014-01-10