Di Data Studio, Anda dapat membuat gambar dari lingkungan pengembangan pribadi dan menggunakannya untuk pengembangan data atau di lingkungan pengembangan pribadi lainnya.
Latar Belakang
Selama pengembangan dan pengujian di lingkungan pengembangan pribadi, Anda mungkin memerlukan berbagai dependensi pihak ketiga. Instal dependensi yang diperlukan di lingkungan tersebut, lalu buat custom image darinya untuk dibagikan ke lingkungan pengembangan pribadi dan ruang kerja lainnya.
Gambar yang dibuat dari lingkungan pengembangan pribadi mendukung tipe task Notebook, Python, dan Shell. Anda tidak dapat mengubah tipe task atau konfigurasi lain setelah gambar dibuat.
Prasyarat
-
VPC: Buat VPC.
-
DataWorks: Buat instans lingkungan pengembangan pribadi dan sambungkan ke VPC.
-
Alibaba Cloud Container Registry (ACR):
-
Siapkan ACR dengan membuat instans Edisi Perusahaan, namespace, dan repository image, serta dengan mengonfigurasi kontrol akses VPC.
-
Aktifkan Cloud DNS PrivateZone. Untuk informasi penagihan, lihat Penagihan Produk.
-
-
VPC yang disambungkan ke instans lingkungan pengembangan pribadi, VPC yang disambungkan ke Alibaba Cloud Container Registry (ACR), dan VPC yang disambungkan ke kelompok sumber daya uji untuk penerbitan gambar harus merupakan VPC yang sama.
-
Jika lingkungan pengembangan pribadi Anda harus mengambil dependensi pihak ketiga dari internet, Anda harus mengonfigurasi akses internet untuk VPC tersebut. Untuk informasi selengkapnya, lihat Gunakan fitur SNAT Gateway NAT Internet untuk mengakses internet.
Langkah 1: Akses lingkungan pengembangan pribadi
-
Buka halaman Workspaces di konsol DataWorks. Di bilah navigasi atas, pilih wilayah yang diinginkan. Temukan ruang kerja yang diinginkan dan pilih di kolom Actions.
-
Di bagian atas halaman, klik Personal development environment · Select dan pilih instans lingkungan pengembangan pribadi yang sudah ada.
Langkah 2: Buat gambar dari instans
-
Tingkatkan lingkungan pengembangan pribadi sebelum membuat gambar dari instans tersebut.
PentingSaat Anda meningkatkan lingkungan pengembangan pribadi, Anda dapat menginstal dependensi open-source atau menginstal dependensi pihak ketiga.
-
Setelah mengonfigurasi lingkungan pengembangan pribadi, klik daftar drop-down Personal development environment · Select di bagian atas halaman dan pilih Instance Management untuk membuka panel daftar instans.
-
Buat custom image.
Di daftar instans, temukan instans target dan klik Operation di kolom Actions. Konfigurasikan ACR Instance, Namespace, Image Repository, Image Version, dan Task Type menggunakan resource dari bagian Prasyarat.
Parameter
Deskripsi
Image Name
Masukkan nama kustom untuk gambar DataWorks.
ACR Instance
Pilih instans ACR. Untuk informasi cara membuat instans ACR, lihat Buat instans Edisi Perusahaan.
Namespace
Pilih namespace dari instans ACR. Untuk informasi selengkapnya, lihat Buat namespace.
Image Repository
Pilih repository image dari instans ACR. Untuk informasi selengkapnya, lihat Buat repository image.
Image Version
Masukkan versi gambar kustom.
Synchronize to MaxCompute
Nilai default-nya adalah No.
CatatanOpsi ini tersedia hanya jika ACR Instance yang dipilih adalah Standard Edition atau lebih tinggi.
-
Jika Anda memilih Yes, gambar kustom DataWorks akan dihasilkan. Saat gambar diterbitkan di DataWorks, gambar tersebut juga akan dibuat sebagai gambar MaxCompute. Untuk informasi selengkapnya, lihat Buat gambar MaxCompute dari lingkungan pengembangan pribadi.
-
Jika Anda memilih No, hanya gambar kustom DataWorks yang dihasilkan. Gambar tersebut tidak akan dibuat sebagai gambar MaxCompute.
Task Type
Pilih tipe task yang dapat menggunakan gambar tersebut.
-
Notebook
-
Python
-
Shell
-
-
Setelah menyelesaikan konfigurasi, klik Confirm untuk mulai membuat gambar.
Penting-
Saat membuat gambar, pastikan VPC yang disambungkan ke instans lingkungan pengembangan pribadi dan VPC yang disambungkan ke Alibaba Cloud Container Registry (ACR) sama.
-
Proses pembuatan gambar dapat memakan waktu 1 hingga 5 menit, tergantung pada ukuran gambar dan kondisi jaringan.
-
Setelah dibuat, Anda tidak dapat mengubah gambar ini di Image Management.
-
-
Tunggu hingga proses pembuatan gambar selesai.
Langkah 3: Terbitkan custom image
Setelah custom image dibuat, buka konsol DataWorks dan navigasi ke tab . Temukan gambar target, lalu Test dan Publish gambar tersebut. Perhatikan hal berikut selama pengujian dan penerbitan:
-
Saat menguji custom image, pilih kelompok sumber daya Serverless.
-
VPC yang disambungkan ke kelompok sumber daya Serverless yang Anda gunakan untuk pengujian dan penerbitan harus sama dengan VPC yang dikonfigurasi di Alibaba Cloud Container Registry (ACR).
-
Hanya gambar yang telah lolos pengujian yang dapat diterbitkan.
-
Jika custom image Anda perlu mengambil paket pihak ketiga dari internet dan pengujian timeout atau gagal, periksa apakah VPC yang disambungkan ke Test Resource Group memiliki akses internet. Untuk mengonfigurasi akses internet untuk VPC, lihat Gunakan fitur SNAT Gateway NAT Internet untuk mengakses internet.
Langkah 4: Tetapkan gambar ke ruang kerja
-
Di tab di konsol DataWorks, temukan custom image yang telah Published.
-
Di kolom Operation gambar target, klik untuk mengikat custom image ke ruang kerja.
Langkah 5: Gunakan gambar kustom
Setelah menetapkan gambar ke ruang kerja, Anda dapat menggunakannya untuk mengembangkan node Notebook, Python, atau Shell. Langkah-langkah berikut menggunakan node Python sebagai contoh:
-
Di panel Project Directory di sisi kiri halaman pengembangan data, klik ikon
dan pilih untuk membuat node Python. -
Setelah menyelesaikan pengembangan node, klik Run Configuration di sisi kanan. Konfigurasikan Resource Group dan pilih Image yang dibutuhkan oleh kode Python Anda.
Atur juga Compute CU (misalnya,
0.5). Jika tidak ada gambar yang tersedia, Anda dapat mengklik New Image untuk membuatnya. -
Klik ikon
untuk melakukan debug kode Python. -
Setelah debug berhasil, klik Scheduling Settings. Di tab Scheduling Strategy, konfigurasikan Image untuk penjadwalan periodik node tersebut.
Catatan-
Gambar yang dikonfigurasi di Scheduling Settings harus sama dengan gambar yang dikonfigurasi di Run Configuration.
-
Untuk node Notebook, Anda hanya dapat mengonfigurasi gambar di Scheduling Settings.
-
-
Setelah mengonfigurasi pengaturan penjadwalan, Anda dapat Save dan Publish node Python tersebut.
Langkah selanjutnya
Persistent image: Anda dapat membuat custom image menjadi persistent image, yang menghilangkan kebutuhan untuk menerapkan ulang lingkungan gambar pada setiap eksekusi. Menggunakan kembali lingkungan yang sama memastikan konsistensi dan mengurangi biaya waktu proses, komputasi, dan trafik. Untuk informasi selengkapnya, lihat Buat persistent image.
Lampiran: Tingkatkan lingkungan pengembangan pribadi
Dependensi default di lingkungan pengembangan pribadi DataWorks mungkin tidak mencakup semua kebutuhan pengembangan Anda. Anda dapat menginstal dependensi tambahan untuk meningkatkan lingkungan tersebut.
Instal dependensi open-source
Anda dapat menginstal dependensi open-source di instans lingkungan pengembangan pribadi Anda. Contoh berikut menginstal library jieba.
-
Klik ikon
di pojok kiri bawah halaman pengembangan data untuk membuka terminal. -
Di terminal, jalankan perintah berikut untuk menginstal library jieba.
pip install jieba● /mnt/workspace> pip install jieba Looking in indexes: https://mirrors.cloud.aliyuncs.com/pypi/simple Collecting jieba Downloading https://mirrors.cloud.aliyuncs.com/pypi/packages/c6/cb/18eeb235f833b726522d7ebed54f2278ce28ba9438e3135ab0278d9792a2/jieba-0.42.1.tar.gz (19.2 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 19.2/19.2 MB 101.0 MB/s eta 0:00:00 Installing build dependencies ... done Getting requirements to build wheel ... done Preparing metadata (pyproject.toml) ... done Building wheels for collected packages: jieba Building wheel for jieba (pyproject.toml) ... done Created wheel for jieba: filename=jieba-0.42.1-py3-none-any.whl size=19314508 sha256=5d2a212c7aaa36057e04dde6c183c1d23da40d2452831dd8b2d00482d1a963cd Stored in directory: /root/.cache/pip/wheels/70/b3/5f/b9d1821b0e0b90640bf536c9f79f039cafbec7de737a9b8c49 Successfully built jieba Installing collected packages: jieba Successfully installed jieba-0.42.1 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv -
Setelah library jieba terinstal, buat file
.pydi direktori . Edit dan simpan kode berikut di file Python tersebut.import sys import jieba '''Get the system input parameter arg''' for arg in sys.argv: print(f"argv: {arg}") '''Call the jieba class to tokenize the input data and print the output''' seg_list = jieba.cut(sys.argv[1], cut_all=False) print("Default Mode: " + "/ ".join(seg_list)) print('finish')Setelah selesai mengedit, klik
untuk menyimpan kode Python tersebut. -
Di terminal, jalankan perintah berikut untuk mengeksekusi file Python.
python file_name.py "我是大数据治理开发平台文档"/mnt/workspace> python xxx.py "我是大数据治理开发平台文档" argv: xxx.py argv: 我是大数据治理开发平台文档 Building prefix dict from the default dictionary ... Loading model from cache /tmp/jieba.cache Loading model cost 0.914 seconds. Prefix dict has been built successfully. Default Mode: 我/ 是/ 大/ 数据/ 治理/ 开发/ 平台/ 文档 finish
Eksekusi yang berhasil mengonfirmasi bahwa library jieba telah terinstal dengan benar.
Instal dependensi pihak ketiga
Clone dengan Git
Untuk meng-clone proyek Python menggunakan git clone, Anda harus mengonfigurasi akses jaringan publik untuk VPC tersebut. Untuk informasi selengkapnya, lihat Konfigurasikan Gateway NAT Internet.
-
Klik ikon
di pojok kiri bawah halaman pengembangan data untuk membuka terminal. -
Di terminal, jalankan perintah berikut untuk masuk ke folder workspace:
cd /mnt/workspace -
Clone proyek Python dari Git ke folder workspace.
# Ganti URL dengan URL repositori Anda sendiri. git clone https://github.com/example/Example-Python.git -
Instal proyek Python yang telah di-clone.
-
Masuk ke direktori proyek Python yang telah di-clone.
cd Example-Python -
Instal proyek Python tersebut.
pip install ./mnt/workspace/xxx>> pip install . Looking in indexes: https://mirrors.cloud.aliyuncs.com/pypi/simple Processing /mnt/workspace/xxx Installing build dependencies ... done Getting requirements to build wheel ... done Preparing metadata (pyproject.toml) ... done Requirement already satisfied: requests>=2.24.0 in /usr/local/lib/python3.11/site-packages (from my-python-lib==0.1) (2.32.3) Requirement already satisfied: numpy in /usr/local/lib/python3.11/site-packages (from my-python-lib==0.1) (1.26.4) Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.11/site-packages (from requests>=2.24.0->my-python-lib==0.1) (3.4.0) Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.11/site-packages (from requests>=2.24.0->my-python-lib==0.1) (3.10) Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.11/site-packages (from requests>=2.24.0->my-python-lib==0.1) (2.2.3) Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.11/site-packages (from requests>=2.24.0->my-python-lib==0.1) (2024.8.30)
-
Unggah proyek
-
Unggah proyek Python lokal ke direktori dan gunakan terminal untuk masuk ke folder proyek tersebut.
cd /mnt/workspace/"python_project_folder" -
Jalankan perintah berikut untuk menginstal proyek Python tersebut.
pip install ./mnt/workspace/xxx>> pip install . Looking in indexes: https://mirrors.cloud.aliyuncs.com/pypi/simple Processing /mnt/workspace/xxx Installing build dependencies ... done Getting requirements to build wheel ... done Preparing metadata (pyproject.toml) ... done Requirement already satisfied: requests>=2.24.0 in /usr/local/lib/python3.11/site-packages (from my-python-lib==0.1) (2.32.3) Requirement already satisfied: numpy in /usr/local/lib/python3.11/site-packages (from my-python-lib==0.1) (1.26.4) Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.11/site-packages (from requests>=2.24.0->my-python-lib==0.1) (3.4.0) Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.11/site-packages (from requests>=2.24.0->my-python-lib==0.1) (3.10) Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.11/site-packages (from requests>=2.24.0->my-python-lib==0.1) (2.2.3) Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.11/site-packages (from requests>=2.24.0->my-python-lib==0.1) (2024.8.30)
Unggah program
-
Unggah paket terkompresi program Python lokal ke direktori . Kemudian, gunakan terminal untuk mengekstrak paket tersebut dan melihat path kompilasi Python.
cat 'decompressed_python_project_name'/bin/pip -
Buat path kompilasi Python.
# Buat path kompilasi Python yang Anda temukan. mkdir -p 'python_compile_path_found' -
Pindahkan folder yang telah diekstrak ke path kompilasi yang digunakan Python saat build.
mv 'decompressed_python_project_name' /'python_compile_path_found' -
Ganti paket Python default dengan program Python Anda.
for src in idle3 pydoc3 python3 python3-config pip3; do \ dst="$(echo "$src" | tr -d 3)"; \ [ -s "/usr/local/bin/$src" ]; \ [ ! -e "/usr/local/bin/$dst" ]; \ mv /usr/local/bin/$dst /usr/local/bin/${dst}_bak ln -svT "python_compile_path_found/bin/$src" "/usr/local/bin/$dst"; \ done
Setelah instalasi, verifikasi bahwa dependensi pihak ketiga berfungsi sebagaimana mestinya dengan menjalankan dan melakukan debug kode Anda di lingkungan pengembangan pribadi.
> Change Workspace