現在、新しいdockerコンテナを作成するとき、共有メモリディレクトリのサイズは64MBに制限されています。しかし、アプリケーションはこの共有メモリに依存しているため、このサイズを増やす必要があります。 Dockerコンテナで/ dev/shmのサイズを増やす方法はありますか? 64MBはdockerコードにハードコードされていると聞きました。ソースからdockerをインストールし、/ dev/shmの値を変更する方法は?
オプションのパラメーター--shm-size
をdocker run
コマンドに渡すことにより、shmサイズを変更できます。デフォルトは64MBです。
例えば:
docker run -it --shm-size=256m Oracle11g /bin/bash
Docker-composeを使用している場合は、your_service.shm_size
値runningまたはyour_service.build.shm_size
whenbuilding。
例:
version: '3.5'
services:
your_service:
build:
context: .
shm_size: '2gb' <-- this will set the size when BUILDING
shm_size: '2gb' <-- when RUNNING
ソースへのリンク 。
Docker-composeを使用してdocker環境をセットアップする場合、docker-compose.yml構成ファイルで共有メモリを設定することもできます(ファイル形式のバージョン3.5以降)。
build:
context: .
shm_size: '2gb'