Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Spesifikasi Dockerfile
Gambar yang Anda tentukan di Dockerfile Anda harus sesuai dengan spesifikasi di bagian berikut untuk membuat gambar dengan sukses.
Menjalankan gambar
-
Entrypoint
— Kami merekomendasikan untuk menyematkan titik masuk ke dalam gambar menggunakan DockerCMD
atauEntrypoint
instruksi. Anda juga dapat mengonfigurasiContainerEntrypoint
danContainerArguments
yang diteruskan ke wadah saat runtime. Untuk informasi selengkapnya, lihatCodeEditorAppImageConfig
. -
EnvVariables
— Dengan Studio, Anda dapat mengonfigurasiContainerEnvironment
variabel yang tersedia untuk wadah. Variabel lingkungan ditimpa dengan variabel lingkungan dari SageMaker. Untuk memberi Anda pengalaman yang lebih baik, variabel lingkungan biasanyaAWS_
danSageMaker_namespaced
memprioritaskan lingkungan platform.Berikut ini adalah variabel lingkungan:
-
AWS_REGION
-
AWS_DEFAULT_REGION
-
AWS_CONTAINER_CREDENTIALS_RELATIVE_URI
-
SAGEMAKER_SPACE_NAME
-
Spesifikasi untuk pengguna dan sistem file
-
WorkingDirectory
— EBS Volume Amazon untuk ruang Anda dipasang di jalur/home/sagemaker-user
. Anda tidak dapat mengubah jalur pemasangan. GunakanWORKDIR
instruksi untuk mengatur direktori kerja gambar Anda ke folder di dalamnya/home/sagemaker-user
. -
UID
— ID pengguna dari Docker kontainer. UID= 1000 adalah nilai yang didukung. Anda dapat menambahkan akses sudo ke pengguna Anda. Itu IDs dipetakan ulang untuk mencegah proses yang berjalan di wadah memiliki lebih banyak hak istimewa daripada yang diperlukan. -
GID
— ID grup dari Docker kontainer. GID=100 adalah nilai yang didukung. Anda dapat menambahkan akses sudo ke pengguna Anda. Itu IDs dipetakan ulang untuk mencegah proses yang berjalan di wadah memiliki lebih banyak hak istimewa daripada yang diperlukan. -
Direktori data meta — Direktori
/opt/.sagemakerinternal
dan/opt/ml
direktori yang digunakan oleh. AWS File data meta di/opt/ml
berisi data meta tentang sumber daya seperti.DomainId
Gunakan perintah berikut untuk menampilkan isi sistem file:
cat /opt/ml/metadata/resource-metadata.json {"AppType":"CodeEditor","DomainId":"
example-domain-id
","UserProfileName":"example-user-profile-name
,"ResourceArn":"arn:aws:sagemaker:Wilayah AWS
:111122223333
;:app/domain-ID
/user-ID
/CodeEditor/default","ResourceName":"default","AppImageVersion":"current"} -
Direktori logging -
/var/log/studio
dicadangkan untuk direktori logging Editor Kode dan ekstensi yang terkait dengannya. Kami menyarankan Anda untuk tidak menggunakan folder dalam membuat gambar Anda.
Pemeriksaan kesehatan dan URL untuk aplikasi
-
Base URL
— Dasar URL untuk BYOI aplikasi haruscodeeditor/default
. Anda hanya dapat memiliki satu aplikasi dan harus selalu diberi namadefault
. -
Titik akhir pemeriksaan Kesehatan - Anda harus meng-host server Editor Kode Anda di 0.0.0.0 port 8888 untuk mendeteksinya. SageMaker
-
Otentikasi — Anda harus lulus
--without-connection-token
saat membukasagemaker-code-editor
untuk memungkinkan SageMaker untuk mengautentikasi pengguna Anda.
catatan
Jika Anda menggunakan SageMaker Distribusi Amazon sebagai gambar dasar, persyaratan ini sudah diurus sebagai bagian dari entrypoint-code-editor
skrip yang disertakan.
Sampel Dockerfile
Berikut ini adalah contoh Dockerfile yang memenuhi spesifikasi yang tercantum di bagian sebelumnya untuk membuat gambar dari awal menggunakan lingkungan micromamba
FROM mambaorg/micromamba:latest ARG NB_USER=
"sagemaker-user"
ARG NB_UID=1000 ARG NB_GID=100 USER root RUN micromamba install -y --name base -c conda-forge sagemaker-code-editor USER $NB_UID CMD eval"$(micromamba shell hook --shell=bash)"
; \ micromamba activate base; \ sagemaker-code-editor --host 0.0.0.0 --port 8888 \ --without-connection-token \ --base-path"/CodeEditor/default"
Berikut ini adalah contoh Dockerfile yang memenuhi spesifikasi yang tercantum di bagian sebelumnya untuk membuat gambar berdasarkan Distribusi Amazon SageMaker
FROM
public.ecr.aws/sagemaker/sagemaker-distribution:latest-cpu
ARG NB_USER="sagemaker-user"
ARG NB_UID=1000 ARG NB_GID=100 ENV MAMBA_USER=$NB_USER USER root # install scrapy in the base environment RUN micromamba install -y --name base -c conda-forge scrapy # download VSCodeVim RUN \ wget https://github.com/VSCodeVim/Vim/releases/download/v1.27.2/vim-1.27.2.vsix \ -P /tmp/exts/ --no-check-certificate # Install the extension RUN \ extensionloc=/opt/
amazon/sagemaker/sagemaker-code-editor-server-data/extensions \ && sagemaker-code-editor \ --install-extension"/tmp/exts/vim-1.27.2.vsix"
\ --extensions-dir"${extensionloc}"
USER $MAMBA_USER ENTRYPOINT ["entrypoint-code-editor"
]