Mais conteúdo relacionado
Semelhante a Newcomer2020 Docker研修 (20)
Newcomer2020 Docker研修
- 3. 3
講師の自己紹介
氏名: 矢澤 優 (やざわ すぐる)
社歴: 1年 (2019新卒)
所属: CRMのECチーム
使用言語: Python PHP Shell (Bash)
好きなDockerイメージ: distroless
- 19. ● pull: イメージをDockerHubなどのレジストリから取得
● build: カスタムイメージ作成
● images: イメージの一覧表示
● run: コンテナの起動と実行
● start: コンテナの開始
● stop: コンテナの停止
● exec: コンテナでコマンドを実行
● rm: コンテナの削除
● logs: コンテナのログを表示
3.コマンド入門 - よく使うコマンド
19
- 20. 3.コマンド入門 - ハンズオン1
20
1. イメージの確認
$ docker images
2. hello-worldというイメージを実行してみましょう
$ docker run hello-world
3. イメージの確認
$ docker images
- 21. 3.コマンド入門 - ハンズオン2
21
1. イメージの取得
$ docker pull nginx:1.17-alpine
2. Nginxコンテナを起動・実行
$ docker run -p 127.0.0.1:8080:80 -d --name test
nginx:1.17-alpine
3. localhost:8080にアクセスしてみましょう
4. コンテナの停止・削除
$ docker rm -f test
- 24. ● FROM: ベースイメージの指定
● RUN: イメージの新しいレイヤでコマンド実行して結果をコミット
● CMD: コンテナ起動後に実行するコマンド
● EXPOSE: コンテナ実行中にリッスンするネットワークポートを指定
● COPY: ファイルやディレクトリのコピー
● USER: RUNやCMDの実行ユーザを指定
● WORKDIR: RUNやCMDの作業ディレクトリ(=$PWD)を指定
4.Dockerfile入門 - よく使うInstruction
24
- 30. 6.docker-compose入門 - よく使うコマンド
● up: コンテナの起動と実行
● ps: コンテナのプロセス確認
● logs: コンテナのログ確認
● exec: コンテナ上でコマンド実行
● stop: コンテナの停止
● down: コンテナの停止とリソース(ネットワークやボリュー
ム等)の削除
30
- 31. ● version: composeのバージョン
● services: コンテナの設定ブロック
● build: Dockerfileがあるパスを指定
● ports: ポートバインド
● volumes: ホストパスのマウント
● depends_on: サービスの依存関係を
定義
● image: ビルド済み / 公開されているイ
メージを指定
6.docker-compose入門 - YAML設定ファイル
31
version: '3.7'
services:
web:
build: .
ports:
- "5000:5000"
volumes:
- .:/code
depends_on:
- redis
redis:
image: redis
docker-compose.yml
- 33. 6.docker-compose入門 - ハンズオン2
33
Get started with Docker Composeをやってみましょう
● 構成
○ Flask (Pythonの軽量Web Framework)
○ Redis (インメモリ・キーバリューNoSQL)
● ハンズオン用リポジトリ
○ https://github.com/hands-lab/newcomer2020-docker-lesson
- 34. ● 制約
○ Pythonのバージョンは3.7 → 3.8
○ requirements.txtはpipenvに置き換える
○ apk addを1行から複数行にする
○ Flaskの実行ユーザを変更
○ Redisは最新のタグを明示的に指定
6.docker-compose入門 - ハンズオン2
34
- 37. ● Docker overview
● Orientation and setup
● Reference documentation
● Best practices for writing Dockerfiles
● Compose file version 3 reference
リファレンス
37