Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Bagaimana Amazon SageMaker Processing Menjalankan Gambar Kontainer Pemrosesan Anda
Amazon SageMaker Processing menjalankan image container pemrosesan Anda dengan cara yang sama seperti perintah berikut, di mana AppSpecification.ImageUri
URI image Amazon ECR yang Anda tentukan dalam suatu CreateProcessingJob
operasi.
docker run [AppSpecification.ImageUri]
Perintah ini menjalankan ENTRYPOINT
perintah yang dikonfigurasi dalam image Docker Anda.
Anda juga dapat mengganti perintah entrypoint dalam gambar atau memberikan argumen baris perintah ke perintah entrypoint Anda menggunakan parameter and dalam permintaan Anda. AppSpecification.ContainerEntrypoint
AppSpecification.ContainerArgument
CreateProcessingJob
Menentukan parameter ini akan mengonfigurasi Amazon SageMaker Processing untuk menjalankan container yang mirip dengan cara perintah berikut.
docker run --entry-point [AppSpecification.ContainerEntrypoint] [AppSpecification.ImageUri] [AppSpecification.ContainerArguments]
Misalnya, jika Anda menentukan ContainerEntrypoint
untuk berada [python3, -v, /processing_script.py]
dalam CreateProcessingJob
permintaan Anda, dan ContainerArguments
menjadi[data-format, csv]
, Amazon SageMaker Processing menjalankan container Anda dengan perintah berikut.
python3 -v /processing_script.py data-format csv
Saat membangun wadah pemrosesan Anda, pertimbangkan detail berikut:
-
Amazon SageMaker Processing memutuskan apakah pekerjaan selesai atau gagal tergantung pada kode keluar dari perintah yang dijalankan. Pekerjaan pemrosesan selesai jika semua kontainer pemrosesan berhasil keluar dengan kode keluar 0, dan gagal jika salah satu kontainer keluar dengan kode keluar bukan nol.
-
Amazon SageMaker Processing memungkinkan Anda mengganti titik masuk container pemrosesan dan menyetel argumen baris perintah seperti yang Anda bisa dengan Docker API. Gambar Docker juga dapat mengonfigurasi titik masuk dan argumen baris perintah menggunakan instruksi dan CMD.
ENTRYPOINT
CaraCreateProcessingJob
ContainerEntrypoint
danContainerArgument
parameter mengonfigurasi titik masuk gambar Docker dan argumen mencerminkan bagaimana Docker mengganti titik masuk dan argumen melalui Docker API:-
Jika tidak ada
ContainerEntrypoint
atauContainerArguments
disediakan, Processing menggunakan defaultENTRYPOINT
atau CMD dalam gambar. -
Jika
ContainerEntrypoint
disediakan, tetapi tidakContainerArguments
, Processing menjalankan gambar dengan entrypoint yang diberikan, dan mengabaikanENTRYPOINT
dan CMD dalam gambar. -
Jika
ContainerArguments
disediakan, tetapi tidakContainerEntrypoint
, Processing menjalankan gambar dengan defaultENTRYPOINT
pada gambar dan dengan argumen yang disediakan. -
Jika keduanya
ContainerEntrypoint
danContainerArguments
disediakan, Processing menjalankan gambar dengan entrypoint dan argumen yang diberikan, dan mengabaikanENTRYPOINT
dan CMD dalam gambar.
-
-
Anda harus menggunakan formulir exec dari
ENTRYPOINT
instruksi di Dockerfile Anda (ENTRYPOINT
["executable", "param1", "param2"])
bukan formulir shell ().ENTRYPOINT
command param1 param2
Ini memungkinkan container pemrosesan Anda menerimaSIGINT
danSIGKILL
memberi sinyal, yang digunakan Processing untuk menghentikan pemrosesan pekerjaan denganStopProcessingJob
API. -
/opt/ml
dan semua subdirektorinya dicadangkan oleh SageMaker AI. Saat membuat image Processing Docker Anda, jangan letakkan data apa pun yang diperlukan oleh container pemrosesan Anda di direktori ini. -
Jika Anda berencana untuk menggunakan perangkat GPU, pastikan container Anda kompatibel dengan nvidia-docker. Sertakan hanya toolkit CUDA dalam wadah. Jangan bundel driver NVIDIA dengan gambar. Untuk informasi selengkapnya tentang nvidia-docker, lihat nvidia/nvidia-docker.