Skip to content

Instantly share code, notes, and snippets.

@kazutan
Last active October 8, 2018 02:18
Show Gist options
  • Save kazutan/ca93d0b76b6a6aab9d977825c5c96b0d to your computer and use it in GitHub Desktop.
Save kazutan/ca93d0b76b6a6aab9d977825c5c96b0d to your computer and use it in GitHub Desktop.
dockerコマンドの自分用メモ。

dockerコマンド自分用メモ。

Ubuntuを前提にしてるので,すべてsudoつき。

Dockerfileからローカルでbuild

$ sudo docker build -t (イメージ名) (Dockerfileのpath)

多くの場合,buildしたいDockerfileと同じディレクトリにいるから,その時のPATHは.でOK

dockerイメージの操作

イメージの取得

$ sudo docker pull kazutan/stan-d:latest

コロンの後はDockerHubリポジトリ内のタグ。

取得しているイメージの確認

$ sudo docker images

イメージの一覧が表示される。

イメージの削除

$ sudo docker rmi s88

イメージ一覧で出てくるリストから,該当するイメージのIMAGE IDの最初の3文字で指定してる。被りがなければこれでOK。もしエラーがでてうまく行かず,強制的に取り除きたいときは以下のコマンドを。

$ sudo docker rmi --force s88

コンテナの操作

コンテナの一覧表示

$ sudo docker ps

現在稼働しているコンテナの一覧が表示される。稼働してないコンテナも含めて一覧表示させるには以下のコマンドを。

$ sudo docker ps -a

コンテナの作成(2018-08-24追記: なんか初期PASSWORDを引き渡さないといけなくなった)

$ sudo docker run -p 8787:8787 -e PASSWORD=(初期Pass) -v (リンクさせたいディレクトリパス):/home/rstudio -d --name (コンテナ名) kazutan/stan-d:latest
  • -p 8787:8787はポートフォワーディング。
  • -e PASSWORD=(初期Pass)はRStudioServerへログインする際のパスワード。なおアカウント名はrstudio。
  • -vはローカルとリモートでディレクトリを通す。
  • -dはバックグラウンドで動かすオプション。これをしないといちいち^Cで落とさないといけなくなる。
  • --nameは作成するコンテナ名。基本設定したほうが楽。なおすでに同名のコンテナがあると怒られる。
  • 最後に使用するイメージ名。もし指定したイメージがない場合,DockerHubに探しに行ってイメージを取得し,そしてコンテナを作成しようとする。

サンプルとしては,こんな感じ。

$ sudo docker run -p -e PASSWORD=kosaki 8787:8787 -v ~:/home/rstudio -d --name kosaki kazutan/stan-d

コンテナの停止

$ sudo docker stop (コンテナ名)

コンテナが停止する(削除はされない)。

コンテナの起動

$ sudo docker start (コンテナ名)

停止していたコンテナを起動する。存在しないコンテナは起動できない。

コンテナの削除

$ sudo docker rm (コンテナ名)

該当のコンテナを削除。なおそのコンテナが起動している場合は怒られるので,停止してからにすること。もし強制的に削除したい場合は,たぶん以下でOK。

$ sudo docker rm --force (コンテナ名)

コンテナに繋いでbash

$ sudo docker exec -it (コンテナ名) /bin/bash

これで該当のコンテナへ入れる。出るときはexitでOK

RStudioServerをprevbiew版に差し替える

イメージは以下の通り:

  1. rockerベースのコンテナ作成
  2. 作ったコンテナに繋いでbash(上記内容参照)
  3. コンテナ内のrstudio-serverを削除(sudo apt remove rstudio-server)
  4. gdebi-coreをaptでインストール
  5. wgetでdebイメージをダウンロード(preview版のページからリンク先をコピーすれば楽。なおrockerはDebian9)
  6. sudo gdebi rstudio-server-stretch-*****.debを実行
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment