tech_memo
コンテナパフォーマンスチューニング †
コンテナのulimit上限値設定について †
- open fileについて、その他わかってること
- open fileはunlimitedは指定できない
- /etc/secuilityで有効な上限値はカーネルパラメータfs.nr_openの値
- コンテナ内のユーザはopen files は、カーネルパラメータfs.nr_openと等しい
- ユーザがリソースを食いつぶすようなことがあれば、上記ファイルの設定値を書き換えて、デーモン再起動でいける(はず)
レジストリ操作CLI †
/var/lib/docker/overlay2 が肥大化した時の対処 †
インストール †
AWS †
RHEL †
コンテナ実行 †
環境変数を設定して実行 †
ストレージ †
Docker Volume †
特徴 †
- ホスト上のディレクトリをマウントさせる
- 複数コンテナで共有可能
- ホスト上で直接操作はNG
作成方法 †
マウント方法(--mountオプションを使う場合。推奨) †
マウント方法(-vオプションを使う場合) †
bind mount †
特徴 †
- ホスト上のファイル・ディレクトリをコンテナでマウントして利用
- ホスト上で編集OK
- 複数コンテナで共有可能
マウント方法(-vオプションを使う場合) †
マウント方法(--mountオプションを使う場合。推奨) †
tmpfs †
特徴 †
- ホスト上のメモリ領域をコンテナのディレクトリとしてマウント
マウント方法 †
- --mountオプションで、type=tmpfsを指定する。
- 下記は、tmpfsのサイズを500MB、パーミッションを700で作成するケース
docker run --name tmpfs-test2 -itd --mount type=tmpfs,target=/app,tmpfs-size=500M,tmpfs-mode=700 nginx
Network †
ホストと同じネットワーク構成にする(hostネットワーク) †
コンテナ間接続(ユーザ定義ブリッジを作成)(推奨) †
- 上記デフォルトブリッジに接続した場合、コンテナ同士はIP指定で接続できるが、コンテナ名指定では接続不可
- コンテナ名で接続するには、ユーザ定義ブリッジを作成して、それに接続させる必要がある。以下その手順。
- ブリッジ作成
docker network create <ブリッジ名>
- 作成したブリッジにコンテナを接続させる
docker network connect <作成したブリッジ名> <コンテナ名>
- コンテナ起動時にブリッジ接続させる方法
docker run --name alpine3 -itd --network <ブリッジ名> <コンテナ名>
ノンネットワーク(コンテナ間接続させない) †
コンテナ間接続(linkオプションを使う) †
docker run --name from-srv -d --link <リンク先コンテナ名[:エイリアス]> my-proxy
- link自体は古く、通常はdockerネットワークを作成することで接続させるのが主流
- linkは後述のlink先の環境変数をlink元でも自動設定できるので、そのような用途が必要な場合に利用するとよい
コンテナへのシェル接続 †
コンテナ・ホスト間のファイルコピー †
コンテナ・イメージの削除 †
- イメージを消すためには先にコンテナを消す必要がある
コンテナ削除 †
イメージ削除 †
Dockerfile †
docker-machine †
docker-compose †
最新の20件
2023-01-26
2022-11-11
2022-03-02
2022-02-03
2021-11-18
2021-11-11
2021-10-27
2021-10-04
2021-09-30
2021-08-24
2021-04-01
2021-02-25
2020-08-13
2020-05-22
2020-04-16
2020-04-15
2020-03-23
2020-03-12
2020-02-27
今日の20件
- counter: 445
- today: 1
- yesterday: 0
- online: 2