LoginSignup
10
3

More than 5 years have passed since last update.

Dockerを使うならVSCodeが結構便利

Last updated at Posted at 2018-10-20

Dockerを使うけどなんかコマンドとかめんどい。。。

イメージの管理とかコンテナ管理とかなんか難しくないです?
そんなとき、VSCodeのDockerプラグインはかなり便利。

Dockerプラグインのリポジトリ
https://github.com/microsoft/vscode-docker

  • コンテナを止めたり
  • イメージを削除したり

コマンド打たなくてもいいから便利。
Dockerfileを作るときも便利。
開発するときも便利。
開発してるときなんかはディレクトリ共有したいからdocker-compose使うけど。


Python勉強会やってるのね

勉強会のときノートパソコン持って行くのしんどいし、環境別だし、書いたドキュメントとかとっておきたい。
サーバーに環境作ってiPadにキーボードつけて勉強会に参加したら楽だ。
ということでまず仮想環境作って見ようということにした。

Dockerfile を書く

Dockerfile書くの初めてなのね。
だもんで勉強した。
以下の環境を整えたい。

  • 作業環境は Jupyterlab にしたい
  • せっかくのJupyterlabだし、TensorFlowも入れたい
  • PHPとかJSとかも書きたいのでExtensionも使えるようにしたい(おいおいね)

参考にさせて頂いた記事

DockerでJupyterLabを構築する
https://qiita.com/muk-ai/items/a147cfd2cafc57420b15

上の記事のDockerfileを少しいじってみる
今回は貧弱なサーバーに乗せることも考えてるのでCPU版のTensorflowにしておいた。

Dockerfile
FROM jupyter/datascience-notebook
# Jupyterが用意している物があるのでそれを利用する。
# これを利用する場合、jovyan というユーザーでUIDが500に設定されるようだ。

LABEL maintainer Ayumu Suzuki

# labをインストール
RUN pip install jupyterlab
# CPU版を使うならこっち
RUN pip --no-cache-dir install -I -U tensorflow
# GPU版ならこっち
# RUN pip --no-cache-dir install -I -U tensorflow-gpu
# 起動コマンド
RUN jupyter serverextension enable --py jupyterlab

docker-composeのためのYamlを書く。
ポートフォワーディングは必要ないので削除した。

docker-compose.yml
version: "2"
services:
  jupyterlab:
    build:
      context: .
    user: root
    volumes:
      - "./work:/home/jovyan/work"
    environment:
      NB_UID: 500
      GRANT_SUDO: "yes"
    command: start.sh jupyter lab

ビルド

$ docker-compose build

実行

$ docker-compose up

一旦ここまで

10
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
3