Docker学習メモ_Part1
Dockerに関する学習メモです。
チーム開発の際の環境構築に便利とのことで、Dockerを勉強し始めました。
学習している教材
- 「米国AI開発者がゼロから教えるDocker講座」
友人に勧められて購入しました。別の教材をUdemyで購入しましたが、こちらの方がわかり易いです。
Dockerとは(何ができるの?便利なの?)
コンテナという箱に開発環境を作って、その中でアプリケーションを作成することができる。
そのコンテナを他のメンバーに渡すこともできて、他のメンバーは1から環境構築せずに、同じ環境で開発ができる。
※カヤックさんの下記記事が参考になりました。
はじめにやったこと
- Docker Hubの登録とDocker のインストール
Docker imageを作って、Docker Hubにアップする
自分でDocker imageを作って、Docker Hubにアップすれば、他の人(共同開発者とか)も同じDocker imageを使える。
他の人(共同開発者とか)は、Docker HubからDocker imageをpullし、そのDocker imageからcontainerを作ることができる。
やったこと
- Docker Hubからdocker imageをhost(自分のPC)にpull(持ってくる)する。
- Docker imageからcontainerを作る。
- containerを編集する。
- containerからDocker imageを作る。
- Docker Hubにリポジトリを作る。
- そこに作成したDocker imageをpushする。(リポジトリ名とDocker image名は同じにする)
- 他の人(共同開発者など)は、Docker HubからDocker imageをpullし、containerを作ることで、同じ環境を構築できる。
補足
Docker imageは、image layerからできている。
image layerは重複せず、それぞれのimage layerが一つ一つあり、それをDocker HubやHostでDocker image毎に利用している。
そのため、データ容量を削減できる。