こちらの続編です。
そして、こちらの知見も活用しています。
こちらでDatabricksクラスターのランタイムとして使用できるDockerイメージが公開されていますが、standard
などとなっているものは、デフォルトではsshdが動いていません。
SSH対応版のDockerファイルが公開されていますが、若干修正が必要でした。
以下のDockerfileでDockerイメージを作成します。こちらを参考にENTRYPOINT
を使ってsshdを起動しています。
FROM databricksruntime/standard:13.3-LTS
RUN apt-get update \
&& apt-get install --yes openssh-server \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
ENTRYPOINT service ssh restart && bash
docker build -t takaregistry.azurecr.io/ssh_custome_image:13.3 .
docker push takaregistry.azurecr.io/ssh_custome_image:13.3
クラスターが起動したら、クラスターにノートブックをアタッチしてsshdの動作を確認します。
%sh
ps aux | grep ssh
root 1 0.0 0.0 2892 988 pts/0 Ss 00:03 0:00 /bin/sh -c service ssh restart && bash /bin/bash
root 26 0.0 0.0 15432 1824 ? Ss 00:03 0:00 sshd: /usr/sbin/sshd [listener] 0 of 10-100 startups
root 930 0.0 0.0 3852 1968 ? S 00:04 0:00 grep ssh
sshdが動いてます。
ローカルマシンのターミナルからSSHで接続します。
ssh ubuntu@48.218.5.173 -p 2200 -i /Users/yayoi/.ssh/id_rsa