dockerメモ
自分用のメモ
インストール
https://docs.docker.com/install/linux/docker-ce/centos/
$ sudo docker run hello-world まで確認
イメージの一覧
$ docker images
コンテナの操作
コンテナの一覧を表示する
$ docker ps -a
$ docker images
コンテナの一覧を表示する
$ docker ps -a
STATUS
UP=起動中
Exited=停止
コンテナの生成+起動
$ docker run [オプション] イメージ名[:タグ名] [引数]
$ docker run [オプション] イメージ名[:タグ名] /bin/bash
$ docker run -it -p 8888:8888 tensorflow/tensorflow
docker run オプション
オプション | 内容 |
---|---|
-it | コンテナを作ってログインする |
--rm | コンテナ終了時にコンテナを自動的に削除 |
--name 名前 | 設定した名前でコンテナを起動 |
-d | バックグラウンドで実行する |
-p XXXX:YYYY | ホストのポートXXXXがコンテナのポートYYYYにマップする |
-v \${DIR_ON_HOST}:${DIR_ON_CONTAINER} | コンテナにボリュームを割り当てる |
-w dir_on_container | dir_on_containerをワーキングディレクトリに設定 |
--runtime=${RUNTIME} | GPU対応tensorflowで使うやつ。公式ドキュメントにもコンテナに使うランタイムとしか書いてない |
ログイン状態から抜けるdettach(デタッチ)
ctrl + P → ctrl + Q
コンテナの起動
$ docker start ${container_id} or ${name}
コンテナの停止
$ docker stop ${container_id} or ${name}
コンテナの操作
起動中のコンテナに入ってbashを使う
$ docker start ${container_id} or ${name}
$ docker stop ${container_id} or ${name}
コンテナの操作
起動中のコンテナに入ってbashを使う
rootユーザでコンテナに入る
USER=root
CONTAINER_NAME=jupyter
docker exec -it --user ${USER} ${CONTAINER_NAME} /bin/bash
イメージの作成
コンテナからイメージを作成
CONTAINER_NAME=jupyter
REPOSITORY=continuumio/anaconda3
TAG=snorkel
docker commit ${CONTAINER_NAME} ${REPOSITORY}:${TAG}
Dockerfileからイメージを作成
CONTAINER_NAME=jupyter
REPOSITORY=continuumio/anaconda3
TAG=snorkel
docker commit ${CONTAINER_NAME} ${REPOSITORY}:${TAG}
tagを省略しているので、latestが付与される
IMAGE_NAME=test
DOCKERFILE_PATH=.
docker build -t ${IMAGE_NAME} ${DOCKERFILE_PATH}
tagを付ける場合
IMAGE_NAME=test
TAG_NAME=1.0
DOCKERFILE_PATH=.
docker build -t ${IMAGE_NAME}:${TAG_NAME} ${DOCKERFILE_PATH}
Volume dockerでホストのデータ領域をマウントする時に使う方法
便利なdocker
Jupyter
$ docker run --rm --name jupyter -d -p 8888:8888 \
-v `pwd`/workspace:/workspace -w /workspace \
continuumio/anaconda3 \
jupyter-lab --no-browser --port=8888 --ip=0.0.0.0 \
--allow-root --NotebookApp.token=''
Author And Source
この問題について(dockerメモ), 我々は、より多くの情報をここで見つけました https://qiita.com/wwacky/items/9297c91ded4faa266091著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .