Lewati ke isi

Pengembangan Skrip / Instalasi Paket Pihak Ketiga

Setelah DataFlux Func diinstal, karena DataFlux Func sendiri memerlukan paket pihak ketiga, paket-paket ini dapat langsung digunakan dalam Skrip tanpa instalasi tambahan.

Daftar paket pihak ketiga yang telah diinstal sebelumnya dapat dilihat di "Manajemen / Alat PIP", di mana paket yang ditandai Ya pada kolom "Bawaan" adalah paket pihak ketiga yang telah diinstal sebelumnya.

Jika pengguna perlu menginstal paket pihak ketiga tambahan, mereka juga dapat menginstalnya di "Manajemen / Alat PIP".

1. Instalasi Paket Python melalui Jaringan Publik

Jika DataFlux Func yang memerlukan paket pihak ketiga tambahan dapat mengakses jaringan publik secara langsung, maka Anda dapat langsung menggunakan "Alat PIP" bawaan sistem untuk menginstalnya.

1.1 Mengaktifkan "Alat PIP"

Aktifkan "Alat PIP" di "Manajemen / Fitur Eksperimental".

enable-pip-tool.png

1.2 Menginstal Paket Pihak Ketiga

Di "Alat PIP", Anda dapat memilih mirror Pypi, memasukkan nama paket, lalu menginstalnya.

Jika perlu menentukan nomor versi, Anda dapat menginstalnya dengan format package==1.2.3.

install-package.png

Memilih Mirror

Jika server Anda tidak dapat mengakses PyPI secara langsung karena beberapa alasan, Anda dapat memilih mirror PIP yang berbeda.

2. Instalasi Paket Python tanpa Jaringan Publik

Jika server tempat DataFlux Func berada tidak dapat mengakses internet karena berbagai alasan, maka metode PIP biasa tidak akan dapat menginstal paket pihak ketiga.

Dalam hal ini, diperlukan DataFlux Func lain dengan arsitektur yang sama dan dapat mengakses jaringan publik untuk menginstal paket pihak ketiga. Setelah instalasi selesai, salin seluruh direktori extra-python-packages ke DataFlux Func yang tidak dapat mengakses jaringan publik.

Berikutnya, DataFlux Func yang dapat mengakses jaringan publik disebut "Func dengan Jaringan"; DataFlux Func yang tidak dapat mengakses jaringan publik disebut "Func tanpa Jaringan"

2.1 Menginstal Paket Pihak Ketiga pada Func dengan Jaringan

Untuk langkah ini, silakan merujuk pada bagian sebelumnya "Menginstal paket dari Pypi ketika jaringan publik dapat diakses"

2.2 Mengaktifkan "Modul Manajer File"

Aktifkan "Modul Manajer File" di "Manajemen / Fitur Eksperimental".

enable-file-manager.png

2.3 Mengunduh Direktori Paket Pihak Ketiga dari Func dengan Jaringan

Temukan direktori extra-python-packages (semua konten paket Python yang diinstal tambahan akan disimpan di sini), pilih "Lainnya / Kompres", lalu unduh file zip.

zip-pkg.png

download-pkg.png

2.4 Mengunggah Direktori Paket Pihak Ketiga ke Func tanpa Jaringan

Buka "Func tanpa Jaringan", hapus direktori penyimpanan paket pihak ketiga yang sebelumnya, unggah file zip yang diunduh pada langkah sebelumnya, lalu ekstrak.

delete-pkg.png

upload-pkg.png

unzip-pkg.png

unzip-pkg-done.png

2.5 Restart Func tanpa Jaringan

Untuk langkah ini, silakan merujuk ke Penerapan dan Pemeliharaan / Peningkatan dan Restart

Perhatian

DataFlux Func berjalan di dalam Docker, dan lingkungan runtime Python juga bergantung pada lingkungan di dalam kontainer.

Oleh karena itu, jangan menyalin konten hasil instalasi Python dari mesin lokal atau dari kontainer lain yang bukan DataFlux Func ke dalam DataFlux Func. Jika tidak, sering kali akan menimbulkan masalah yang aneh.

Selain itu: "Func dengan Jaringan" dan "Func tanpa Jaringan" harus memiliki arsitektur perangkat keras yang sama, misalnya keduanya x86_64 atau aarch64.

3. Mengapa Tidak Disarankan Menginstal Paket Python secara Langsung dengan Mengunggah Paket Wheel?

Setelah mengunggah paket Wheel ke server, menginstalnya secara langsung melalui PIP secara teoritis dimungkinkan, tetapi pada kenyataannya sebagian besar kasus tidak akan berhasil.

Alasannya adalah bahwa paket Wheel yang diunggah mungkin juga bergantung pada paket lain; hanya mengunggah paket Wheel yang digunakan langsung dalam kode tidak dapat memenuhi dependensi. Semakin kuat fungsionalitas suatu paket, umumnya semakin banyak paket lain yang dibutuhkan, dan semakin dalam hierarki dependensinya. Pada akhirnya dapat membuat pengguna terjebak dalam dependency hell.

Oleh karena itu, kecuali paket yang akan diinstal tidak bergantung pada paket lain sama sekali, secara umum tidak disarankan untuk menginstal paket pihak ketiga Python dengan mengunggah paket Wheel.