From a703a10f47567fd4ed111866c113010d27e0dcbf Mon Sep 17 00:00:00 2001 From: mats Date: Fri, 9 Feb 2024 14:18:04 +0900 Subject: [PATCH] initial commit --- 3.11/bookworm/Dockerfile | 42 ++++++++++++++++++++++++++++++++++++++++ 3.11/bullseye/Dockerfile | 42 ++++++++++++++++++++++++++++++++++++++++ README.md | 4 +++- 3 files changed, 87 insertions(+), 1 deletion(-) create mode 100644 3.11/bookworm/Dockerfile create mode 100644 3.11/bullseye/Dockerfile diff --git a/3.11/bookworm/Dockerfile b/3.11/bookworm/Dockerfile new file mode 100644 index 0000000..781dad7 --- /dev/null +++ b/3.11/bookworm/Dockerfile @@ -0,0 +1,42 @@ +FROM --platform=linux/amd64 public.ecr.aws/docker/library/python:3.11.8-bookworm + +ARG NB_USER="sagemaker-user" +ARG NB_UID=1000 +ARG NB_GID=100 + +# Setup the "sagemaker-user" user with root privileges. +RUN apt-get update && \ + apt-get install -y sudo && \ + useradd --create-home --shell /bin/bash --gid "${NB_GID}" --uid ${NB_UID} ${NB_USER} && \ + echo "${NB_USER} ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers && \ + rm -rf /var/lib/apt/lists/* + +# Install JupyterLab & AWS CLI +RUN python3 -m pip install jupyterlab==4.1.0 \ + boto3==1.34.38 \ + https://github.com/aws/aws-cli/archive/v2.tar.gz + +# Docker - https://docs.aws.amazon.com/sagemaker/latest/dg/studio-updated-local.html + +# Add Docker's official GPG key: +RUN install -m 0755 -d /etc/apt/keyrings && \ + curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc && \ + chmod a+r /etc/apt/keyrings/docker.asc + +# Add the repository to Apt sources: +RUN echo \ + "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian \ + $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \ + tee /etc/apt/sources.list.d/docker.list > /dev/null + +# Install docker (Studio only supports Docker version 20.10.X.) +RUN apt-get update && \ + apt-get install -y docker-ce=5:20.10.* docker-ce-cli=5:20.10.* containerd.io docker-buildx-plugin docker-compose-plugin && \ + rm -rf /var/lib/apt/lists/* + +USER $NB_USER + +ENV SHELL=/bin/bash + +ENTRYPOINT ["jupyter-lab"] +CMD ["--ServerApp.ip=0.0.0.0", "--ServerApp.port=8888", "--ServerApp.allow_origin=*", "--ServerApp.token=''", "--ServerApp.base_url=/jupyterlab/default"] diff --git a/3.11/bullseye/Dockerfile b/3.11/bullseye/Dockerfile new file mode 100644 index 0000000..ab878c7 --- /dev/null +++ b/3.11/bullseye/Dockerfile @@ -0,0 +1,42 @@ +FROM --platform=linux/amd64 public.ecr.aws/docker/library/python:3.11.8-bullseye + +ARG NB_USER="sagemaker-user" +ARG NB_UID=1000 +ARG NB_GID=100 + +# Setup the "sagemaker-user" user with root privileges. +RUN apt-get update && \ + apt-get install -y sudo && \ + useradd --create-home --shell /bin/bash --gid "${NB_GID}" --uid ${NB_UID} ${NB_USER} && \ + echo "${NB_USER} ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers && \ + rm -rf /var/lib/apt/lists/* + +# Install JupyterLab & AWS CLI +RUN python3 -m pip install jupyterlab==4.1.0 \ + boto3==1.34.38 \ + https://github.com/aws/aws-cli/archive/v2.tar.gz + +# Docker - https://docs.aws.amazon.com/sagemaker/latest/dg/studio-updated-local.html + +# Add Docker's official GPG key: +RUN install -m 0755 -d /etc/apt/keyrings && \ + curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc && \ + chmod a+r /etc/apt/keyrings/docker.asc + +# Add the repository to Apt sources: +RUN echo \ + "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian \ + $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \ + tee /etc/apt/sources.list.d/docker.list > /dev/null + +# Install docker (Studio only supports Docker version 20.10.X.) +RUN apt-get update && \ + apt-get install -y docker-ce=5:20.10.* docker-ce-cli=5:20.10.* containerd.io docker-buildx-plugin docker-compose-plugin && \ + rm -rf /var/lib/apt/lists/* + +USER $NB_USER + +ENV SHELL=/bin/bash + +ENTRYPOINT ["jupyter-lab"] +CMD ["--ServerApp.ip=0.0.0.0", "--ServerApp.port=8888", "--ServerApp.allow_origin=*", "--ServerApp.token=''", "--ServerApp.base_url=/jupyterlab/default"] diff --git a/README.md b/README.md index ade9068..c5bd002 100644 --- a/README.md +++ b/README.md @@ -1 +1,3 @@ -# sagemaker-studio-images \ No newline at end of file +# Jupyter Images + +https://docs.aws.amazon.com/sagemaker/latest/dg/studio-updated-jl-admin-guide-custom-images.html