ひさふぃの日記

DjangoとPythonとLaravelが好き。大阪でフリーランスエンジニアやってます。

Docker入門したのでメモ

到達点

  • 何それおいしいの
  • どのような課題を解決・他技術との優位性を知っている
  • 主な用語のゆるふわ理解
  • 環境を作ったり壊したりできる

通して見た and 役立った(簡単順)

ドットインストール Docker入門

#マンガでわかるDocker ① 〜概念・基本コマンド編〜 PDFダウンロード(改訂版) #技術書典 4|湊川あい@わかばちゃんと学ぶ本 発売中|note

Docker入門(第一回)~Dockerとは何か、何が良いのか~ | さくらのナレッジ

どのような問題がを解決でき、どのように用いるのが良いのか。
他と比べて何が優れているのかわかりやすい。必読
2018年なぜ私達はコンテナ/Dockerを使うのか | cloudpack.media

主な用語のゆるふわ理解

  • Dockerfile:Dockerさんがimageを作るための操作手順書
  • image : containerを作るための設計書
  • container:作成した仮想環境
  • compose:複数のcontainerを連携する機能

写経した

よく使いそうなコマンド

上記の写経させてもらったサイトからピックアップ

特に叩きそうで長いコマンド3種類は.bashrcにエイリアスを張った。
ここから先のコマンドは混在するかも。書き換えるのめんどうだから

  • docker image -> di
  • docker container -> dc
  • docker-composer -> d-c

日常的に使いそう

  • docker build -t friendlyhello .
    • Dockfileから名前がfrienlyhelloのimageを作成
  • docker run -itd -p 4000:80 -v [host path]:[docker path] friendlyhello
    • コンテナ起動
  • docker exec -it [hash] bash
    • ハッシュ指定してコンテナにbashで接続
  • dc stop [hash]
    • ハッシュ指定してコンテナ停止
  • d-c up -d
    • docker-compose.ymlファイルを参照して起動
  • d-c ps
    • composeに関連しているcontainerを表示
  • d-c exec [yml内のcontainer名] bash
    • コンテナ指定してbashで接続
  • d-c down
    • サービス停止
  • docker logs -ft [hash]
    • ログを見る。tは時刻表示、fはリアルタイム表示。

Dockert調査 ~ログ編~ - Qiita

di・dl共通のコマンド

  • di ls -a
    • 一覧表示
  • di rm
    • ハッシュ指定で削除。fオプションで強制削除
  • di rm $(di ls -aq)
    • 全て削除
  • di prune
    • 使っていないもの全て削除

たまに使いそうな(Docker Hub関連)

  • docker tag image username/repository:tag
    • pushするためにタグ付け
  • docker push username/repository:tag
    • push
  • docker run username/repository:tag
    • Docker Hubのイメージ起動

小ネタ

[docker] COPY とADD の違いを試してみた - Qiita