SlideShare a Scribd company logo
1 of 27
Download to read offline
WSL2+docker+Jupyterと
VS Codeリモート環境の構築
2020.11.3
@Saito56565656
このハンズオン資料について
• WSL2インストール
【参考】https://www.atmarkit.co.jp/ait/articles/2008/31/news023.html
• ssh設定
【参考】https://blog.mihyaeru.com/2020/06/28/wsl2-ssh/
【参考】https://qiita.com/gengen16k/items/18262af0781fd32fc9cd
• Docker Dessktopのインストール
【参考】https://www.docker.com/
【参考】https://qiita.com/KoKeCross/items/a6365af2594a102a817b
• Jupyter-Lab imageのビルドと実行
【参考】https://qiita.com/komiya_____/items/96c14485eb035701e218
【参考】https://qiita.com/ss_33_sss/items/b018e55834f21d1a593d
☞ 理屈はさておき、docker上でJupyter-Lab(Python機械学習環境)の最速立上げ手順
☞ 仮想上directoryとPCフォルダーをbindしwindows上でファイル保存する環境構築手順
☞ VSCodeでのnotebook利用方法
【謝辞】Blog著者の皆様ありがとうございました
説明すること
☞ windows shellとLinuxとdockerの基礎知識、コマンドの役割
☞ VSCodeの初期設定、使用方法
☞ Pythonの文法、基礎知識
説明しないこと(手を動かして自分で調べましょう)
WSL2のインストール
WSLのインストール
• 「コントロールパネル」⇒「プログラムと機能」を開く
• 「Windowsの機能の有効化または無効化」をクリック
• 「Linux用Windowsサブシステム」にチェックを入れて「OK」をクリック
• Windowsを再起動する
【参考】WSL2とは: https://www.atmarkit.co.jp/ait/articles/1906/14/news019.html
Ubuntuのインストール
• Microsft Storeで「wsl」と検索
• 「Ubuntu」を選択して「インストール」
• インストールが完了するとUbuntuが立上るので「UNIX username」「New password」
を入力してユーザー初期設定する
仮想マシン有効化
• 「コントロールパネル」⇒「プログラムと機能」を開く
• 「Windowsの機能の有効化または無効化」をクリック
• 「仮想マシン プラットフォーム」にチェックを入れて「OK」をクリック
• Windowsを再起動する
• コマンドプロンプトより「wsl.exe –l -v」と入力しWSLのVERSIONを確認
• VERSIONは1のはずなので「wsl.exe --set-version Ubuntu 2」と入力
• 「WSL 2を実行するには、カーネルコンポーネントの更新が必要です」が表示されたら、
https://docs.microsoft.com/ja-jp/windows/wsl/wsl2-kernel⇒「wsl_update_x64.msi」
をダウンロードして実行
• 再度「wsl.exe --set-version Ubuntu 2」を実行して「wsl.exe –l -v」でVERSION確認
変らなかったら再起動してVERSION再確認
UbuntuをWSL2用に変換
• 再度「wsl.exe --set-version Ubuntu 2」と入力して下記メッセージが出たら
または「 Windowsの機能の有効化または無効化」で「仮想マシンプラットフォーム」
が表示されない場合、BIOSの仮想化支援機能を有効化する
• BIOSで有効化する項目は
intel CPU: VT-x
VT-d
AMD CPU: AMD-V(UEFI上ではSVM Mode、CPU Configurationにある)
IOMMU(Advanced>AMD CBS>NBIO Common Options等、深い場所)
【参考】
https://jp.finalfantasyxiv.com/lodestone/character/6584870/blog/4364798?order=2
仮想化支援機能の有効化が必要な場合
ssh設定
※ssh接続しなくてもコンテナのVSCodeリモート接続に支障はないが設定しておく
• Ubuntuターミナルを起動して「/etc/ssh/sshd_config」を開く
(nanoならsudo nano /etc/ssh/sshd_config)
• 「PasswordAuthentication」がnoだったらyesにして保存
• 以下のスクリプトをWindowsで起動時実行するバッチファイルとして作成(コピペ可)
wsl -d Ubuntu -u root exec service ssh restart
for /F %%i in (‘wsl -d Ubuntu exec hostname -I’) do set ip=%%i
netsh interface portproxy delete v4tov4 listenport=22
netsh interface portproxy add v4tov4 listenport=22 connectaddress=%ip%
• バッチファイルを任意の場所に保存
WSL2のssh設定①
WSL2のssh設定②
• 「スタートメニュー」⇒「タスクスケジューラー」⇒「タスクの作成」を開く
• 全般タグは、任意の名前を付けて「最上位の特権」をチェック、構成はWindows10
• トリガータグは、新規作成から「タスクの開始」を「スタートアップ時」に設定
• 操作タグは、新規作成から「プログラム/スクリプト」に先ほどのバッチファイルを設定
• 設定タグは、念のため再起動間隔を1分間/3回で設定
Docker Dessktopのインストール
Docker Desktopのインストール
• https://www.docker.com/get-startedより「Windows用にダウンロード」をクリック
• 「Enable WSL 2 Windows Features 」をチェックしたままインストールを続ける
• インストール完了後に「setting」⇒「General」でWSL2 engineが有効なのを確認
• 「setting」⇒「Resources」⇒「WSL INTEGRATION」でUbuntuをonにしてRestart
Jupyter-Lab imageのビルドと実行
Jupyter-Lab imageのビルド
• 作業フォルダを作成し機械学習環境imageをビルドする為のDockerfileを配置
• 作業フォルダに移動してimageをビルド(作業フォルダはDockerfileで指定するdir名)
$ mkdir docker && cd docker
$ sudo nano Dockerfile
$ docker build -t {任意のimageファイル名} . ← . は忘れないように
home
ubuntuのusername
docker
etc
Dockerfile
# ベースイメージ名:タグ名
FROM continuumio/anaconda3:2019.03
# アップグレード・インストール
RUN pip install --upgrade pip && ¥
pip install autopep8 && ¥
pip install numpy && ¥
pip install pandas && ¥
pip install matplotlib && ¥
pip install xlsxwriter && ¥
pip install Keras && ¥
pip install tensorflow
# コンテナ側:{username}はubuntuのusername、user rootの下の{docker}というフォルダをWORKDIRに指定
WORKDIR /home/{username}/docker
# コンテナ側のリッスンポート番号
EXPOSE 8888
# ENTRYPOINT命令はコンテナ起動時に実行するコマンドを指定(基本docker runの時に上書きしないもの)
# “jupyter-lab” => jupyter-lab立ち上げコマンド
# “—ip=0.0.0.0” => ip制限なし
# “—port=8888” => EXPOSE命令で書いたポート番号と合わせる
# ”—no-browser” => ブラウザを立ち上げない、コンテナ側にはブラウザがない
# “—allow-root” => rootユーザーの許可、セキュリティ的に良くないので自分で使うとき限定
# “—NotebookApp.token=‘’” => トークンなしで起動許可、これも警察に怒られる
ENTRYPOINT [“jupyter-lab”, “—ip=0.0.0.0”, “—port=8888”, “—no-browser”, “—allow-root”, “—NotebookApp.token=‘’”]
# CMD命令はコンテナ起動時に実行するコマンドを指定
# “—notebook-dir=/workdir” => Jupyter Labのルートとなるディレクトリを指定
CMD [“—notebook-dir=/home/{username}/docker”]
Dockerfileは以下の{username}を各自書き換えてコピペ作業フォルダ名をdockerにする場合
必要に応じてパッケージは追加・削除
{ }は不要、念のため
Jupyter-Lab imageの実行
• ビルドしたdocker imageを実行する
• 右のメッセージが出たら成功
• ブラウザーで「localhost:8888」と入力し起動を確認
以下の{}内を各自書き換えてコピペ
$ docker run -it -p 8888:8888 --rm --name my-lab --mount type=bind,src=/mnt/c/Users/{winPCのユーザーフォルダ名}/{任意の作業フォルダ
名},dst=/home/{username}/docker {自分がbuildしたコンテナimage名}
src=以下はPC側の作業(保存)フォルダー、ubuntu側からbindで/mnt以下にぶら下がる
dst=以下は仮想マシンの作業(保存)フォルダー、
VS Codeからcontainerへ接続
VS Code拡張機能インストール
• 「 Ctrl-Sihft-x」(拡張機能)から「remote」と入力
• Remote Developmentをインストール
拡張機能の検索窓に
「remote」と入力
インストール
• Ubuntuターミナルでdocker runした状態で
リモートウィンドウボタンをクリック
• Remoto – Container: Attach to Running Container…を選択
コンテナに接続
• 先ほどdocker runしたコンテナが表示されるので選択
コンテナに接続
しばらくすると接続が完了する新しいウィンドウが開く
• 「 Ctrl-Sihft-x」(拡張機能)から「python」と入力
• Python拡張機能をコンテナ上にインストール
コンテナにPythonをインストール
コンテナに接続
• リモートエクスプローラーを開き
PC作業フォルダ(保存先)と仮想作業dirがbindされてるのを確認
リモート
エクスプローラー
Dockerfileで指定したPCフォルダ名
(Source)と仮想作業Dir(Distination)が
表示されていることを確認
作業dirを開く
• エクスプローラーボタンを押して「フォルダを開く」から
Ubuntu上の作業dirに移動する
コンテナをdocker rnした
Ubuntuフォルダ名を入力
エクスプローラー
VS Codeから新しいnotebookを作成
• 「 Ctrl-Sihft-p」(コマンドパレット)から
Python: Create Blank New Jupyter Notebookを選択
• しばらくすると新しいnotebookが立ち上がる
サンプルcode実行
• 適当なグラフを描画してみる
• ↓怒られたら再実行する
sin_wave.py
import wave
import numpy as np
from matplotlib import pylab as plt
import struct
a = 1 # 振幅
fs = 500 # サンプリング周波数
f0 = 5 # 周波数
sec = 5 # 秒
swav = []
for n in np.arange(fs * sec):
# sin波生成
s = a * np.sin(2.0 * np.pi * f0 * n / fs)
swav.append(s)
# 表示
plt.plot(swav[0:100])
plt.show()
ファイルをbind先のPCフォルダに保存
• 名前を付けて保存したら、bindしたPCフォルダでも確認
保存
test_sampleで保存
Docker上の作業dir
PC上の作業フォルダ
VS Codeリモートの切断とコンテナ終了
• リモートを切断してVS Codeを閉じてからdocker imageを停止
クリック
リモート接続を終了後、VS Codeを閉じる Ubuntuターミナルで「Ctrl-C」⇒「y」で
コンテナを停止

More Related Content

What's hot

Transformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法についてTransformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法についてSho Takase
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Akihiro Suda
 
PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜
PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜
PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜Preferred Networks
 
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2Preferred Networks
 
Kubernetesによる機械学習基盤への挑戦
Kubernetesによる機械学習基盤への挑戦Kubernetesによる機械学習基盤への挑戦
Kubernetesによる機械学習基盤への挑戦Preferred Networks
 
コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門Kohei Tokunaga
 
Windowsマシン上でVisual Studio Codeとpipenvを使ってPythonの仮想実行環境を構築する方法(Jupyter notebookも)
Windowsマシン上でVisual Studio Codeとpipenvを使ってPythonの仮想実行環境を構築する方法(Jupyter notebookも)Windowsマシン上でVisual Studio Codeとpipenvを使ってPythonの仮想実行環境を構築する方法(Jupyter notebookも)
Windowsマシン上でVisual Studio Codeとpipenvを使ってPythonの仮想実行環境を構築する方法(Jupyter notebookも)Daichi Kitamura
 
第 1 回 Jetson ユーザー勉強会
第 1 回 Jetson ユーザー勉強会第 1 回 Jetson ユーザー勉強会
第 1 回 Jetson ユーザー勉強会NVIDIA Japan
 
【DL輪読会】Vision-Centric BEV Perception: A Survey
【DL輪読会】Vision-Centric BEV Perception: A Survey【DL輪読会】Vision-Centric BEV Perception: A Survey
【DL輪読会】Vision-Centric BEV Perception: A SurveyDeep Learning JP
 
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)Kuniyasu Suzaki
 
シリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのかシリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのかAtsushi Nakada
 
DockerとPodmanの比較
DockerとPodmanの比較DockerとPodmanの比較
DockerとPodmanの比較Akihiro Suda
 
大域マッチングコスト最小化とLiDAR-IMUタイトカップリングに基づく三次元地図生成
大域マッチングコスト最小化とLiDAR-IMUタイトカップリングに基づく三次元地図生成大域マッチングコスト最小化とLiDAR-IMUタイトカップリングに基づく三次元地図生成
大域マッチングコスト最小化とLiDAR-IMUタイトカップリングに基づく三次元地図生成MobileRoboticsResear
 
CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編
CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編
CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編Fixstars Corporation
 
知っているようで知らないNeutron -仮想ルータの冗長と分散- - OpenStack最新情報セミナー 2016年3月
知っているようで知らないNeutron -仮想ルータの冗長と分散- - OpenStack最新情報セミナー 2016年3月 知っているようで知らないNeutron -仮想ルータの冗長と分散- - OpenStack最新情報セミナー 2016年3月
知っているようで知らないNeutron -仮想ルータの冗長と分散- - OpenStack最新情報セミナー 2016年3月 VirtualTech Japan Inc.
 
空撮画像技術と3次元リアルタイムデータの可視化について
空撮画像技術と3次元リアルタイムデータの可視化について空撮画像技術と3次元リアルタイムデータの可視化について
空撮画像技術と3次元リアルタイムデータの可視化についてRyousuke Wayama
 

What's hot (20)

Transformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法についてTransformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法について
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
 
PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜
PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜
PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜
 
MLOps入門
MLOps入門MLOps入門
MLOps入門
 
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2
 
GitLab から GitLab に移行したときの思い出
GitLab から GitLab に移行したときの思い出GitLab から GitLab に移行したときの思い出
GitLab から GitLab に移行したときの思い出
 
Kubernetesによる機械学習基盤への挑戦
Kubernetesによる機械学習基盤への挑戦Kubernetesによる機械学習基盤への挑戦
Kubernetesによる機械学習基盤への挑戦
 
コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門
 
Windowsマシン上でVisual Studio Codeとpipenvを使ってPythonの仮想実行環境を構築する方法(Jupyter notebookも)
Windowsマシン上でVisual Studio Codeとpipenvを使ってPythonの仮想実行環境を構築する方法(Jupyter notebookも)Windowsマシン上でVisual Studio Codeとpipenvを使ってPythonの仮想実行環境を構築する方法(Jupyter notebookも)
Windowsマシン上でVisual Studio Codeとpipenvを使ってPythonの仮想実行環境を構築する方法(Jupyter notebookも)
 
Docker Compose 徹底解説
Docker Compose 徹底解説Docker Compose 徹底解説
Docker Compose 徹底解説
 
LiDARとSensor Fusion
LiDARとSensor FusionLiDARとSensor Fusion
LiDARとSensor Fusion
 
第 1 回 Jetson ユーザー勉強会
第 1 回 Jetson ユーザー勉強会第 1 回 Jetson ユーザー勉強会
第 1 回 Jetson ユーザー勉強会
 
【DL輪読会】Vision-Centric BEV Perception: A Survey
【DL輪読会】Vision-Centric BEV Perception: A Survey【DL輪読会】Vision-Centric BEV Perception: A Survey
【DL輪読会】Vision-Centric BEV Perception: A Survey
 
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
 
シリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのかシリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのか
 
DockerとPodmanの比較
DockerとPodmanの比較DockerとPodmanの比較
DockerとPodmanの比較
 
大域マッチングコスト最小化とLiDAR-IMUタイトカップリングに基づく三次元地図生成
大域マッチングコスト最小化とLiDAR-IMUタイトカップリングに基づく三次元地図生成大域マッチングコスト最小化とLiDAR-IMUタイトカップリングに基づく三次元地図生成
大域マッチングコスト最小化とLiDAR-IMUタイトカップリングに基づく三次元地図生成
 
CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編
CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編
CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編
 
知っているようで知らないNeutron -仮想ルータの冗長と分散- - OpenStack最新情報セミナー 2016年3月
知っているようで知らないNeutron -仮想ルータの冗長と分散- - OpenStack最新情報セミナー 2016年3月 知っているようで知らないNeutron -仮想ルータの冗長と分散- - OpenStack最新情報セミナー 2016年3月
知っているようで知らないNeutron -仮想ルータの冗長と分散- - OpenStack最新情報セミナー 2016年3月
 
空撮画像技術と3次元リアルタイムデータの可視化について
空撮画像技術と3次元リアルタイムデータの可視化について空撮画像技術と3次元リアルタイムデータの可視化について
空撮画像技術と3次元リアルタイムデータの可視化について
 

Similar to WSL2+docker+JupyterとVS Codeリモート環境の構築

ラズパイ2で動く Docker PaaSを作ってみたよ
ラズパイ2で動く Docker PaaSを作ってみたよラズパイ2で動く Docker PaaSを作ってみたよ
ラズパイ2で動く Docker PaaSを作ってみたよnpsg
 
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪Kunihiro TANAKA
 
今さら聞けない人のためのDocker超入門 – OpenStack最新情報セミナー 2015年4月
今さら聞けない人のためのDocker超入門 – OpenStack最新情報セミナー 2015年4月今さら聞けない人のためのDocker超入門 – OpenStack最新情報セミナー 2015年4月
今さら聞けない人のためのDocker超入門 – OpenStack最新情報セミナー 2015年4月VirtualTech Japan Inc.
 
今さら聞けない人のためのDocker超入門
今さら聞けない人のためのDocker超入門今さら聞けない人のためのDocker超入門
今さら聞けない人のためのDocker超入門Toru Miyahara
 
ラズパイ2で動く Docker PaaS
ラズパイ2で動く Docker PaaSラズパイ2で動く Docker PaaS
ラズパイ2で動く Docker PaaSnpsg
 
Docker調査20150704
Docker調査20150704Docker調査20150704
Docker調査20150704HommasSlide
 
第一回コンテナ情報交換会@関西
第一回コンテナ情報交換会@関西第一回コンテナ情報交換会@関西
第一回コンテナ情報交換会@関西Masahide Yamamoto
 
Circle ci and docker+serverspec
Circle ci and docker+serverspecCircle ci and docker+serverspec
Circle ci and docker+serverspecTsuyoshi Yamada
 
Docker入門: コンテナ型仮想化技術の仕組みと使い方
Docker入門: コンテナ型仮想化技術の仕組みと使い方Docker入門: コンテナ型仮想化技術の仕組みと使い方
Docker入門: コンテナ型仮想化技術の仕組みと使い方Yuichi Ito
 
Dockerのキホンその2 Docker Compose Swarm Machine 利用編
Dockerのキホンその2 Docker Compose Swarm Machine 利用編Dockerのキホンその2 Docker Compose Swarm Machine 利用編
Dockerのキホンその2 Docker Compose Swarm Machine 利用編Naoki Nagazumi
 
20150101勉強会 dokku alt
20150101勉強会 dokku alt20150101勉強会 dokku alt
20150101勉強会 dokku altShugo Numano
 
仮想化技術として注目されているDocker入門 - PASONATECH ADVANTAGE SEMINAR
仮想化技術として注目されているDocker入門 - PASONATECH ADVANTAGE SEMINAR仮想化技術として注目されているDocker入門 - PASONATECH ADVANTAGE SEMINAR
仮想化技術として注目されているDocker入門 - PASONATECH ADVANTAGE SEMINARVirtualTech Japan Inc.
 
今さら聞けない人のためのDocker超入門 CentOS 7.2対応版
今さら聞けない人のためのDocker超入門 CentOS 7.2対応版今さら聞けない人のためのDocker超入門 CentOS 7.2対応版
今さら聞けない人のためのDocker超入門 CentOS 7.2対応版VirtualTech Japan Inc.
 
今時のDev opsの取り組み事例集
今時のDev opsの取り組み事例集今時のDev opsの取り組み事例集
今時のDev opsの取り組み事例集Wataru NOGUCHI
 
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】Masahito Zembutsu
 
コンテナ情報交換会2
コンテナ情報交換会2コンテナ情報交換会2
コンテナ情報交換会2Masahide Yamamoto
 
JAWS-UG コンテナ支部 Docker入門 ハンズオン
JAWS-UG コンテナ支部 Docker入門 ハンズオンJAWS-UG コンテナ支部 Docker入門 ハンズオン
JAWS-UG コンテナ支部 Docker入門 ハンズオンRyo Nakamaru
 

Similar to WSL2+docker+JupyterとVS Codeリモート環境の構築 (20)

ラズパイ2で動く Docker PaaSを作ってみたよ
ラズパイ2で動く Docker PaaSを作ってみたよラズパイ2で動く Docker PaaSを作ってみたよ
ラズパイ2で動く Docker PaaSを作ってみたよ
 
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪
 
Docker Swarm入門
Docker Swarm入門Docker Swarm入門
Docker Swarm入門
 
今さら聞けない人のためのDocker超入門 – OpenStack最新情報セミナー 2015年4月
今さら聞けない人のためのDocker超入門 – OpenStack最新情報セミナー 2015年4月今さら聞けない人のためのDocker超入門 – OpenStack最新情報セミナー 2015年4月
今さら聞けない人のためのDocker超入門 – OpenStack最新情報セミナー 2015年4月
 
今さら聞けない人のためのDocker超入門
今さら聞けない人のためのDocker超入門今さら聞けない人のためのDocker超入門
今さら聞けない人のためのDocker超入門
 
ラズパイ2で動く Docker PaaS
ラズパイ2で動く Docker PaaSラズパイ2で動く Docker PaaS
ラズパイ2で動く Docker PaaS
 
Docker調査20150704
Docker調査20150704Docker調査20150704
Docker調査20150704
 
第一回コンテナ情報交換会@関西
第一回コンテナ情報交換会@関西第一回コンテナ情報交換会@関西
第一回コンテナ情報交換会@関西
 
今さら聞けない人のためのDocker超入門
今さら聞けない人のためのDocker超入門今さら聞けない人のためのDocker超入門
今さら聞けない人のためのDocker超入門
 
Circle ci and docker+serverspec
Circle ci and docker+serverspecCircle ci and docker+serverspec
Circle ci and docker+serverspec
 
Docker入門: コンテナ型仮想化技術の仕組みと使い方
Docker入門: コンテナ型仮想化技術の仕組みと使い方Docker入門: コンテナ型仮想化技術の仕組みと使い方
Docker入門: コンテナ型仮想化技術の仕組みと使い方
 
Dockerのキホンその2 Docker Compose Swarm Machine 利用編
Dockerのキホンその2 Docker Compose Swarm Machine 利用編Dockerのキホンその2 Docker Compose Swarm Machine 利用編
Dockerのキホンその2 Docker Compose Swarm Machine 利用編
 
20150101勉強会 dokku alt
20150101勉強会 dokku alt20150101勉強会 dokku alt
20150101勉強会 dokku alt
 
仮想化技術として注目されているDocker入門 - PASONATECH ADVANTAGE SEMINAR
仮想化技術として注目されているDocker入門 - PASONATECH ADVANTAGE SEMINAR仮想化技術として注目されているDocker入門 - PASONATECH ADVANTAGE SEMINAR
仮想化技術として注目されているDocker入門 - PASONATECH ADVANTAGE SEMINAR
 
今さら聞けない人のためのDocker超入門 CentOS 7.2対応版
今さら聞けない人のためのDocker超入門 CentOS 7.2対応版今さら聞けない人のためのDocker超入門 CentOS 7.2対応版
今さら聞けない人のためのDocker超入門 CentOS 7.2対応版
 
今時のDev opsの取り組み事例集
今時のDev opsの取り組み事例集今時のDev opsの取り組み事例集
今時のDev opsの取り組み事例集
 
Dockerと継続的インテグレーション
Dockerと継続的インテグレーションDockerと継続的インテグレーション
Dockerと継続的インテグレーション
 
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
 
コンテナ情報交換会2
コンテナ情報交換会2コンテナ情報交換会2
コンテナ情報交換会2
 
JAWS-UG コンテナ支部 Docker入門 ハンズオン
JAWS-UG コンテナ支部 Docker入門 ハンズオンJAWS-UG コンテナ支部 Docker入門 ハンズオン
JAWS-UG コンテナ支部 Docker入門 ハンズオン
 

WSL2+docker+JupyterとVS Codeリモート環境の構築