Giới thiệu Virtual Environment trong Python

Virtual Environments là gì và dùng để làm gì?

Virtual Environment dịch nôm na là môi trường ảo 😀 Cũng giống như máy ảo (Virtual Machine), Virtual Environment thiết lập một môi trường ảo, cho phép bạn nghịch ngợm lung tung với các packages của Python mà không làm ảnh hưởng đến những packages đã được cài đặt sẵn trên Python. Ví dụ bạn muốn thử nghiệm với Django 1.8 trong khi trên hệ thống đang cài đặt Django 1.4 LTS. Cũng giống như việc bạn dùng Virtual Machine để thử nghiệm phiên bản Chrome beta mới nhất mà không muốn làm ảnh hưởng đến phiên bản đang có trên máy.

Công cụ tạo ra Virtual Environment trên Python là virtualenv. virtualenv tạo ra một thư mục chứa tất cả những thứ cần thiết (executables, libraries).

Sử dụng Virtual Environment như thế nào?

Trước hết để sử dụng được Virtual Environment thì bạn phải cài virtualenv cái đã.

Tạo Virtual Environment

virtualenv sẽ tạo ra một thư mục có tên là [project_name] chứa tất cả những gì cần thiết. Hãy thử xem nội dung của thư mục này:

Nếu trên server có nhiều phiên bản Python (2.x, 3.x) bạn hoàn toàn có thể khởi tạo Virtual Environment với một phiên bản chỉ định:

Hoặc bạn có thể tạo một Virtual Environment mà không có các packages đã được cài đặt sẵn (trong trường hợp bạn muốn làm mọi thứ từ đầu:

Sử dụng Virtual Environment

Khởi động Virtual Environment bằng câu lệnh:

Tên của Virtual Environment sẽ xuất hiện ở phía trước command prompt, cho ta thấy Python đang sử dụng Virtual Environment. Từ đây tất cả những packages được cài đặt mới sẽ nằm trong thư mục [project_name]

Thoát khỏi Virtual Environment

Sử dụng câu lệnh

Sử dụng virtualenv-auto-activate.sh

Ta có thể sử dụng virtualenv-auto-activate.sh để thuận tiện hơn trong quá trình sử dụng Virtual Environment.

Cài đặt:

  • Download: https://gist.github.com/cuongnb14/6ce9ce1c0019857a7dfcf6745a5e6cc2
  • Thêm dòng sau vào file .bashrc hoặc .bash-profile:
     

Sử dụng:

Luôn tạo Virtual Environment với tên là venv (hoặc .venv) tại thư mục gốc của project.

Khi truy cập vào thư mục gốc của project thì Virtual Environment sẽ tự động được active với tên là tên thư mục cha của thư mục venv vừa tạo.

Tham khảo: https://kipalog.com/posts/Gioi-thieu-Virtual-Environment-trong-Python

The following two tabs change content below.

Latest posts by Cuong Nguyen (see all)