Persyaratan dan kasus penggunaan ini dapat menjadi sulit untuk dikelola ketika aplikasi yang berbeda memerlukan versi yang berbeda dari perpustakaan yang sama. Untungnya, Python menyediakan solusi yang kuat untuk mengisolasi lingkungan pengembangan menggunakan lingkungan virtual.
Apa itu Lingkungan Virtual Python?
Lingkungan virtual Python adalah pohon direktori mandiri yang berisi instalasi Python tertentu bersama dengan semua pustaka standarnya. Aplikasi yang membutuhkan versi perpustakaan tertentu dapat diisolasi di lingkungan virtual ini tanpa mencemari sistem atau implementasi Python lainnya. Setiap lingkungan virtual adalah kotak pasir yang terpisah, sehingga Anda dapat membuat sebanyak mungkin lingkungan virtual yang Anda inginkan.
Membuat dan Mengelola Lingkungan Virtual
Untuk membuat lingkungan virtual di Ubuntu, pertama-tama instal paket ketergantungan yang diperlukan dengan menjalankan perintah:
$ sudo apt install python3-venvAnda sekarang dapat membuat lingkungan virtual dengan menjalankan perintah:
$ python3 -m venv myenvMenjalankan perintah di atas akan membuat lingkungan virtual yang disebut "myenv" di direktori home Anda. Jika Anda ingin menggunakan versi Python lainnya, Anda dapat mengganti "python3" di atas dengan path lengkap ke lokasi biner Python alternatif Anda.
Untuk mengaktifkan lingkungan khusus yang dibuat di atas, jalankan perintah:
$ sumber myenv/bin/aktifkanSetelah lingkungan virtual diaktifkan, prompt shell akan berubah untuk mencerminkan lingkungan virtual saat ini yang Anda gunakan. Jika Anda menjalankan “sys.path” di dalam juru bahasa Python, Anda dapat melihat bahwa lingkungan virtual berfungsi dengan baik. Python sekarang akan mencari paket di dalam lingkungan khusus yang baru saja Anda buat.
Jika prompt shell Anda tidak menunjukkan nama lingkungan virtual sebagai awalan, file Python apa pun yang Anda jalankan akan menggunakan sistem Python. Jadi perlu untuk sumber lingkungan virtual sebelum menjalankan file di lingkungan kustom Anda custom.
Anda dapat menonaktifkan lingkungan virtual dengan menjalankan perintah:
$ nonaktifkanSetiap lingkungan virtual Python menyertakan "pyvenv.cfg" yang memiliki kunci "include-system-site-packages" yang disetel ke "false" secara default. Kunci ini memberi tahu lingkungan virtual apakah akan menggunakan paket situs sistem atau tidak. Jika disetel ke "benar", Python di lingkungan virtual akan melihat ke dalam paket sistem jika paket tidak ditemukan di lingkungan virtual. Itu juga akan membuat semua paket yang diinstal sistem dapat diimpor di dalam lingkungan virtual.
Untuk menghapus lingkungan virtual, Anda hanya perlu menghapus direktori lingkungan virtual dan itu akan hilang.
Dimungkinkan untuk membuat dan menyimpan virtualenv pada drive USB eksternal. Anda harus memiliki drive USB yang diformat dalam sistem file NTFS atau EXT. Sistem file FAT32 tidak mendukung symlink yang merupakan persyaratan agar lingkungan virtual berfungsi.
Menggunakan Pip Package Manager untuk Menginstal Paket Di Dalam Lingkungan Virtual
Di dalam lingkungan virtual, Anda dapat menggunakan manajer paket pip untuk menginstal, meningkatkan, dan menghapus paket. Dimungkinkan untuk menurunkan atau meningkatkan versi paket dengan menentukan nomor versi tertentu.
Anda dapat menginstal paket menggunakan pip dengan menjalankan perintah (ganti pygame dengan nama paket yang Anda inginkan):
$ pip instal pygame
Repositori paket pip yang dapat dicari dapat ditemukan di sini.
Untuk menghapus paket, gunakan perintah:
$pip uninstall pygame
Untuk melihat semua versi paket, jalankan perintah:
$ pip instal pygame==
Untuk menurunkan atau meningkatkan ke versi tertentu, gunakan perintah (ganti "1".9.5” dengan nomor versi yang Anda inginkan):
$ pip instal pygame==1.9.5
Untuk memutakhirkan paket ke versi terbaru, jalankan perintah:
$ pip install --upgrade pygame
Untuk melihat semua paket yang terinstal di lingkungan virtual, jalankan perintah:
$ daftar pip
Untuk menyimpan daftar paket yang diinstal di dalam virtualenv, jalankan perintah:
$ pembekuan pip > persyaratan.txtAnda dapat menggunakan "persyaratan" di atas.txt” untuk menginstal paket secara massal. Salah satu kasus penggunaan adalah menduplikasi lingkungan yang ada dengan menginstal semua paket dari awal. Untuk menginstal paket pip secara massal, jalankan perintah:
$ pip install -r persyaratan.txtMenggunakan Lingkungan Virtual Python dengan Aplikasi Non-Python
Aplikasi yang ditulis dalam bahasa pemrograman lain dapat di-sandbox di lingkungan virtual Python selama pip atau pengelola paket Python lainnya menyediakan binari dan paket untuk bahasa/kerangka pemrograman alternatif ini.
Berikut adalah contoh kecil yang menjelaskan cara menginstal Node.js di lingkungan virtual Python. Jalankan perintah berikut satu per satu:
$ python3 -m venv my_node_env$ source my_node_env/bin/activate
roda pemasangan $pip
$ pip instal nodeenv
$ nodeenv -p
$ nodeenv --versi
$ simpul --versi
Setelah selesai, Anda akan memiliki Node yang benar-benar terisolasi.lingkungan js. Anda dapat membuat sebanyak mungkin lingkungan virtual yang Anda inginkan untuk berbagai Node.aplikasi js. Paket yang diinstal melalui manajer paket npm akan dibatasi hanya untuk lingkungan virtual yang diaktifkan.
Kesimpulan
Membuat lingkungan virtual Python adalah cara terbaik untuk menampung lingkungan pengembangan. Setiap lingkungan virtual memiliki biner Python sendiri dan kumpulan paket independennya sendiri. Mengembangkan beberapa aplikasi Python pada sistem yang sama dapat dengan cepat mencemari direktori home dan root Anda dan lingkungan virtual membuatnya sangat mudah untuk dipelihara.