Dockerノウハウ
ビルド時に特定のRUN以降のキャッシュを無効にする。
ARGを適当な場所に入れる。
build時に引数を設定する。
参考
https://www.chazine.com/archives/4038
コンテナを起動したままにする方法。
以下で起動状態を維持できる。
docker-composeで、tty:trueとしてもできる。
参考
Dockerのコンテナを起動したままにする
https://qiita.com/reflet/items/dd65f9ffef2a2fcfcf30
コンテナの自動起動設定
docker-composeの場合、restart: alwaysを指定する。
docker runコマンド実行時に以下の引数を与えることで、自動起動にできる。
既に起動済みのコンテナにリスタートする用に設定を変更する。
container一覧の自動起動設定を取得する。
参考
https://www.pressmantech.com/tech/6522
composeでビルドする際に、image名を指定する
imageというパラメータを使えばよい。階層は、buildと同じ。
参考
https://amaya382.hatenablog.jp/entry/2017/04/03/034002
composeでnvidia-dockerを使う
composeのversionが2の場合
composeのversionが3の場合
deploy配下が必要な部分
以下を参考
https://qiita.com/routerman/items/c5f9d7b6d03e44de6be2
WSL2がdocker prune済みの領域を返してくれない
参考
https://7me.nobiki.com/2020/10/12/wsl2-docker-re-use-disk-space/
GPGエラー
apt updateでGPG エラーが出たら
https://qiita.com/HS310164/items/15ebb375726ff4db4eb2
ML向けdockerの工夫点
機械学習なdockerfileを書くときに気をつけとくと良いこと
https://nykergoto.hatenablog.jp/entry/2020/07/25/%E6%A9%9F%E6%A2%B0%E5%AD%A6%E7%BF%92%E3%81%AAdockerfile%E3%82%92%E6%9B%B8%E3%81%8F%E3%81%A8%E3%81%8D%E3%81%AB%E6%B0%97%E3%82%92%E3%81%A4%E3%81%91%E3%81%A8%E3%81%8F%E3%81%A8%E8%89%AF%E3%81%84%E3%81%93
複数サービスの実行
一つのスクリプトにまとめてそれを実行するのが推奨の方法。
https://docs.docker.jp/v19.03/config/container/multi-service_container.html
daemonで動かすために、通常のsystemctlコマンドはコンテナ内で普通使えない。
一応使う方法はあるが、今度は通常通りには使えない。
https://qiita.com/flour/items/977abe462955e4285d0b
一般ユーザーをコンテナ内に作成する
参考
https://qiita.com/nishina555/items/52aef60cfb82fb794b18
SSH接続できるコンテナ環境の作成
https://qiita.com/takat0-h0rikosh1/items/ae6d951a4b25d260894c
コンテナ内から別コンテナに通信する
公式
https://docs.docker.jp/compose/networking.html#compose-links
コンテナサービス名:コンテナ側のポート
でアクセスできる。ホスト側のポートだと思ってたので要注意。
shared memory領域の拡張
Dockerのshared memoryはデフォルト64MBとなっている。
composeファイルに以下のように記載する。
現在の割り当て確認には、コンテナ内でdfコマンドを使えばよい。
デザインパターン
以下にまとまっているものを見つけた
歴史
Last updated