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ề pip và virtualenv : 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>
Các tin liên quan
Cách cài đặt và bắt đầu với CMS Mezzanine trên Django trên Ubuntu2014-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