GithubHelp home page GithubHelp logo

dockerfiles's Introduction

Dockerfiles

Dockerfiles and docker-compose.yml sample command

非常に良くまとめられたdockerの使い方ドキュメント

Docker setup (Windows10)

dockerコンテナ作成例

Rancher Desktopからインストールする場合(Windows10)

Docker for Windowsからインストールする場合

Docker Toolboxからインストールする場合

TensorFlowのイメージをDocker Hubからダウンロードしてコンテナ立ち上げ

$ docker run -it -v $PWD/../..:/jupyter_notebook --rm --name tensorflow tensorflow/tensorflow

-it:ターミナルを使うためのオプション
-v $PWD/docker_share:/share : ホスト側とコンテナ側のディレクトリを共有するオプション。コマンド実行したディレクトリの下に docker_share というディレクトリが生成され、/shareディレクトリにファイルを入れると、ホスト側にも共有される
--rm:コンテナから抜けるとコンテナを自動で削除する
--name: コンテナの名前を指定

Jupyter Notebookが入ったDocker Hubのイメージからコンテナ立ち上げ

$ docker run -p 8888:8888 -it --rm --name ds jupyter/datascience-notebook

-p:ポート指定。jupyter使う場合必ず必要

起動すると画面に token=xxxxxxxxxxxxxx という形でtokenが表示されるので、http://localhost:8888 にアクセスして、ログイン画面でtoken貼り付ける
もしくは、http://localhost:8888/?token=xxxxxxxxxxxxxx とアドレスにtokenを打ち込めば、ログイン画面を省略して直接Jupyter Notebookにログインできる

よく使うdockerコマンド

$ docker images                         # dockerイメージの一覧確認
$ docker rmi [IMAGE_ID]                 # dockerイメージの削除
$ docker rmi $(docker images -f "dangling=true" -q)  # noneのdockerイメージの削除一括削除
$ docker ps                             # 起動中のdockerコンテナの一覧を表示。全てのコンテナ確認する場合は-aつける
$ docker exec -it [CONTAINER_ID] bash   # 起動中のdockerコンテナをbashで操作する
$ docker stop [CONTAINER_ID]            # 起動中のdockerコンテナの停止
$ docker rm [CONTAINER_ID]              # 起動中のdockerコンテナの削除 ※docker stop [CONTAINER_ID]でコンテナ停止しておくこと
$ docker rm $(docker ps -a -q)          # 起動中の全てのコンテナの削除 ※docker stop $(docker ps -a -q)で全コンテナ停止しておくこと

よく使うdocker-composeのコマンド

  • Compose V2 からは docker-compose コマンドが docker compose になっているので注意
$ docker-compose version        # docker-composeのバージョンを表示
$ cd <docker-compose.yml置いているディレクトリ>
$ docker-compose ps             # docker-composeで起動したコンテナの一覧を表示
$ docker-compose up             # docker-composeでイメージからコンテナを起動。-dつけてバックグラウンドで実行するとjupyterのtoken表示されないので-dはつけないこと
$ docker-compose kill           # docker-composeで起動中のコンテナを強制停止
$ docker-compose restart        # docker-composeで起動中のコンテナを再起動
$ docker-compose rm             # docker-composeで停止中のコンテナを削除

docker hubにimage登録

# 1. Docker Hubにログイン
$ docker login

# 2. upする [IMAGE ID] 確認
$ docker images

# 3. Docker Hub登録用のリポジトリ名とタグを付けたDockerイメージを別に作成
# $ docker tag [IMAGE ID] [自分のDockerID]/[Dockerイメージ名]:[タグ]
$ docker tag *** anonamename/xxx:latest

# 4. Docker Hubに登録(push)
# $ docker push [自分のDockerID]/[Dockerイメージ名]:[タグ]
$ docker push anonamename/xxx:latest

作成したdockerイメージを人に渡す方法

Dockerで構築する機械学習環境【2024年版】

# ubuntu-testイメージを保存。test.tar.gzが作られる
$ docker save ubuntu-test | gzip > test.tar.gz

# test.tar.gzを使ってubuntu-testイメージを作成
$ docker load < test.tar.gz

Author

dockerfiles's People

Contributors

riron1206 avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Forkers

flygod1159

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.