morito

個人的に勉強したことのメモを投稿していく技術ブログ。最近はWebアプリ開発と量子コンピュータの勉強をしてます。

Dockerチュートリアルやってみたメモ

参考にしたQiita記事

qiita.com

環境

MacOS Catalina 10.15.6
Docker for Mac
Docker version 20.10.2
docker-compose version 1.27.4

メモ

Docker run -it の-itとはなにか

docker run -it の「-it」とはなにか - Qiita

-it と入力した場合,
-i or --interactive と -t or --tty 2つのオプションを指定したという意味.
interactive オプションは, 「標準入力」のこと.

データの永続化

Named Volumes
  1. docker volume createコマンドでボリュームを作成。
    2.コンテナを起動するとき、ボリューム接続を指定するのに-vフラグを付け加える

docker volume inspectコマンドで実際の保存場所を確認

$ docker volume inspect todo-db
[
    {
        "CreatedAt": "2021-02-28T11:44:06Z",
        "Driver": "local",
        "Labels": {},
        "Mountpoint": "/var/lib/docker/volumes/todo-db/_data",
        "Name": "todo-db",
        "Options": {},
        "Scope": "local"
    }
]

Mountpointがディスク上にデータが保存されている実際の場所

バインドマウント

バインドマウントを使えば、ホスト上の正確なMountpointをコントロールできます。
データの永続化にも使用できますが、追加のデータをコンテナに提供するのによく使われます。
アプリを開発する場合、バインドマウントでソースコードをコンテナに接続して、
コードを変更したり、応答したり、変更をすぐに確認したりできます。

fish: $(...) is not supported.

fish shellはコマンド置換の書き方が異なるので$ははずす