From 0ce53574750745d45ee73e1934881fe21cc6a446 Mon Sep 17 00:00:00 2001 From: pdefusco Date: Mon, 27 Nov 2023 16:44:32 -0800 Subject: [PATCH] added cuda vscode runtimes with python 39 and 310 --- vscode/Dockerfile-cuda11-vscode-py310 | 75 +++++++++++++++++++++++++++ vscode/Dockerfile-cuda11-vscode-py39 | 75 +++++++++++++++++++++++++++ 2 files changed, 150 insertions(+) create mode 100644 vscode/Dockerfile-cuda11-vscode-py310 create mode 100644 vscode/Dockerfile-cuda11-vscode-py39 diff --git a/vscode/Dockerfile-cuda11-vscode-py310 b/vscode/Dockerfile-cuda11-vscode-py310 new file mode 100644 index 0000000..78acff8 --- /dev/null +++ b/vscode/Dockerfile-cuda11-vscode-py310 @@ -0,0 +1,75 @@ +# ########################################################################### +# +# CLOUDERA COMMUNITY RUNTIMES +# +# (C) Cloudera, Inc. 2023 +# All rights reserved. +# +# Applicable Open Source License: Apache 2.0 +# +# NOTE: Cloudera open source products are modular software products +# made up of hundreds of individual components, each of which was +# individually copyrighted. Each Cloudera open source product is a +# collective work under U.S. Copyright Law. Your license to use the +# collective work is as provided in your written agreement with +# Cloudera. Used apart from the collective work, this file is +# licensed for your use pursuant to the open source license +# identified above. +# +# This code is provided to you pursuant a written agreement with +# (i) Cloudera, Inc. or (ii) a third-party authorized to distribute +# this code. If you do not have a written agreement with Cloudera nor +# with an authorized and properly licensed third party, you do not +# have any rights to access nor to use this code. +# +# Absent a written agreement with Cloudera, Inc. (“Cloudera”) to the +# contrary, A) CLOUDERA PROVIDES THIS CODE TO YOU WITHOUT WARRANTIES OF ANY +# KIND; (B) CLOUDERA DISCLAIMS ANY AND ALL EXPRESS AND IMPLIED +# WARRANTIES WITH RESPECT TO THIS CODE, INCLUDING BUT NOT LIMITED TO +# IMPLIED WARRANTIES OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY AND +# FITNESS FOR A PARTICULAR PURPOSE; (C) CLOUDERA IS NOT LIABLE TO YOU, +# AND WILL NOT DEFEND, INDEMNIFY, NOR HOLD YOU HARMLESS FOR ANY CLAIMS +# ARISING FROM OR RELATED TO THE CODE; AND (D)WITH RESPECT TO YOUR EXERCISE +# OF ANY RIGHTS GRANTED TO YOU FOR THE CODE, CLOUDERA IS NOT LIABLE FOR ANY +# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, PUNITIVE OR +# CONSEQUENTIAL DAMAGES INCLUDING, BUT NOT LIMITED TO, DAMAGES +# RELATED TO LOST REVENUE, LOST PROFITS, LOSS OF INCOME, LOSS OF +# BUSINESS ADVANTAGE OR UNAVAILABILITY, OR LOSS OR CORRUPTION OF +# DATA. +# +# Author(s): Paul de Fusco +# +############################################################################ + +# Start with a Base CML Runtime & upgrade +# Note: This particular image will use the Cuda base image +FROM docker.repository.cloudera.com/cloudera/cdsw/ml-runtime-pbj-workbench-python3.10-cuda:2023.08.2-b8 + +RUN apt update && apt upgrade -y && apt clean && rm -rf /var/lib/apt/lists/* + +# Install code-server +# https://github.com/coder/code-server +# Install latest version. See https://github.com/coder/code-server/blob/main/install.sh for details +RUN curl -fsSL https://code-server.dev/install.sh | sh -s -- --version 4.16.1 + +# Create launch script and symlink to the default editor launcher +RUN printf "#!/bin/bash\n/usr/bin/code-server --auth=none --bind-addr=127.0.0.1:8090 --disable-telemetry" > /usr/local/bin/vscode + +RUN chmod +x /usr/local/bin/vscode +RUN ln -s /usr/local/bin/vscode /usr/local/bin/ml-runtime-editor + + +# Override Runtime label and environment variables metadata +ENV ML_RUNTIME_EDITOR="VsCode" \ + ML_RUNTIME_EDITION="Community" \ + ML_RUNTIME_SHORT_VERSION="2023.11" \ + ML_RUNTIME_MAINTENANCE_VERSION="1" \ + ML_RUNTIME_FULL_VERSION="2023.11.1" \ + ML_RUNTIME_DESCRIPTION="This runtime includes VsCode editor v4.16.1 and is based on PBJ Workbench image with Python 3.10 and CUDA" + +LABEL com.cloudera.ml.runtime.editor=$ML_RUNTIME_EDITOR \ + com.cloudera.ml.runtime.edition=$ML_RUNTIME_EDITION \ + com.cloudera.ml.runtime.full-version=$ML_RUNTIME_FULL_VERSION \ + com.cloudera.ml.runtime.short-version=$ML_RUNTIME_SHORT_VERSION \ + com.cloudera.ml.runtime.maintenance-version=$ML_RUNTIME_MAINTENANCE_VERSION \ + com.cloudera.ml.runtime.description=$ML_RUNTIME_DESCRIPTION diff --git a/vscode/Dockerfile-cuda11-vscode-py39 b/vscode/Dockerfile-cuda11-vscode-py39 new file mode 100644 index 0000000..b1da6a4 --- /dev/null +++ b/vscode/Dockerfile-cuda11-vscode-py39 @@ -0,0 +1,75 @@ +# ########################################################################### +# +# CLOUDERA COMMUNITY RUNTIMES +# +# (C) Cloudera, Inc. 2023 +# All rights reserved. +# +# Applicable Open Source License: Apache 2.0 +# +# NOTE: Cloudera open source products are modular software products +# made up of hundreds of individual components, each of which was +# individually copyrighted. Each Cloudera open source product is a +# collective work under U.S. Copyright Law. Your license to use the +# collective work is as provided in your written agreement with +# Cloudera. Used apart from the collective work, this file is +# licensed for your use pursuant to the open source license +# identified above. +# +# This code is provided to you pursuant a written agreement with +# (i) Cloudera, Inc. or (ii) a third-party authorized to distribute +# this code. If you do not have a written agreement with Cloudera nor +# with an authorized and properly licensed third party, you do not +# have any rights to access nor to use this code. +# +# Absent a written agreement with Cloudera, Inc. (“Cloudera”) to the +# contrary, A) CLOUDERA PROVIDES THIS CODE TO YOU WITHOUT WARRANTIES OF ANY +# KIND; (B) CLOUDERA DISCLAIMS ANY AND ALL EXPRESS AND IMPLIED +# WARRANTIES WITH RESPECT TO THIS CODE, INCLUDING BUT NOT LIMITED TO +# IMPLIED WARRANTIES OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY AND +# FITNESS FOR A PARTICULAR PURPOSE; (C) CLOUDERA IS NOT LIABLE TO YOU, +# AND WILL NOT DEFEND, INDEMNIFY, NOR HOLD YOU HARMLESS FOR ANY CLAIMS +# ARISING FROM OR RELATED TO THE CODE; AND (D)WITH RESPECT TO YOUR EXERCISE +# OF ANY RIGHTS GRANTED TO YOU FOR THE CODE, CLOUDERA IS NOT LIABLE FOR ANY +# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, PUNITIVE OR +# CONSEQUENTIAL DAMAGES INCLUDING, BUT NOT LIMITED TO, DAMAGES +# RELATED TO LOST REVENUE, LOST PROFITS, LOSS OF INCOME, LOSS OF +# BUSINESS ADVANTAGE OR UNAVAILABILITY, OR LOSS OR CORRUPTION OF +# DATA. +# +# Author(s): Paul de Fusco +# +############################################################################ + +# Start with a Base CML Runtime & upgrade +# Note: This particular image will use the Cuda base image +FROM docker.repository.cloudera.com/cloudera/cdsw/ml-runtime-pbj-workbench-python3.9-cuda:2023.08.2-b8 + +RUN apt update && apt upgrade -y && apt clean && rm -rf /var/lib/apt/lists/* + +# Install code-server +# https://github.com/coder/code-server +# Install latest version. See https://github.com/coder/code-server/blob/main/install.sh for details +RUN curl -fsSL https://code-server.dev/install.sh | sh -s -- --version 4.16.1 + +# Create launch script and symlink to the default editor launcher +RUN printf "#!/bin/bash\n/usr/bin/code-server --auth=none --bind-addr=127.0.0.1:8090 --disable-telemetry" > /usr/local/bin/vscode + +RUN chmod +x /usr/local/bin/vscode +RUN ln -s /usr/local/bin/vscode /usr/local/bin/ml-runtime-editor + + +# Override Runtime label and environment variables metadata +ENV ML_RUNTIME_EDITOR="VsCode" \ + ML_RUNTIME_EDITION="Community" \ + ML_RUNTIME_SHORT_VERSION="2023.11" \ + ML_RUNTIME_MAINTENANCE_VERSION="2" \ + ML_RUNTIME_FULL_VERSION="2023.11.2" \ + ML_RUNTIME_DESCRIPTION="This runtime includes VsCode editor v4.16.1 and is based on PBJ Workbench image with Python 3.9 and CUDA 11" + +LABEL com.cloudera.ml.runtime.editor=$ML_RUNTIME_EDITOR \ + com.cloudera.ml.runtime.edition=$ML_RUNTIME_EDITION \ + com.cloudera.ml.runtime.full-version=$ML_RUNTIME_FULL_VERSION \ + com.cloudera.ml.runtime.short-version=$ML_RUNTIME_SHORT_VERSION \ + com.cloudera.ml.runtime.maintenance-version=$ML_RUNTIME_MAINTENANCE_VERSION \ + com.cloudera.ml.runtime.description=$ML_RUNTIME_DESCRIPTION