prosource

도커 컨테이너의 /dev/shm 크기를 늘리는 방법

probook 2023. 8. 26. 11:58
반응형

도커 컨테이너의 /dev/shm 크기를 늘리는 방법

현재 새 도커 컨테이너를 만들 때 공유 메모리 디렉터리의 크기는 64MB로 제한되지만, 내 응용 프로그램은 이 공유 메모리에 의존하기 때문에 이 크기를 늘려야 합니다.도커 컨테이너의 /dev/shm 크기를 늘릴 수 있는 방법이 있습니까?도커 코드에 64MB가 하드코드로 되어 있다고 들었는데, 소스에서 도커를 설치하고 /dev/shm의 값을 변경하는 방법은 무엇입니까?

도커 합성을 사용하는 경우 다음을 설정할 수 있습니다.your_service.shm_size컨테이너가 실행될 때 /dev/shm 크기를 사용하도록 하려면 값을 입력합니다.your_service.build.shm_size건축할 때

예:

version: '3.5'
services:
  your_service:
    build:
      context: .
      shm_size: '2gb' <-- this will set the size when BUILDING
    shm_size: '2gb' <-- when RUNNING 

소스에 대한 링크입니다.

선택적 매개 변수를 전달하여 shm 크기를 수정할 수 있습니다.--shm-size로.docker run지휘권기본값은 64MB입니다.

예:

docker run -it --shm-size=256m oracle11g /bin/bash

도커 합성을 사용하여 도커 환경을 설정하는 경우 공유 메모리를docker-compose.yml구성 파일:

build:
  context: .
  shm_size: '2gb'

작성 파일 문서에 있는 추가 정보:

1.10.0 이전 도커 버전을 사용하는 사람이 있고 어떤 이유로 업그레이드할 수 없는 경우 shm-size를 설정하는 데 사용한 해결 방법이 있습니다(호스트에서 마운트를 만들려면 sudo-권한이 필요함).

sudo mkdir /mnt/dockershm
sudo mount -t tmpfs -o size=1G tmpfs /mnt/dockershm
docker run -d -v /mnt/dockershm:/dev/shm dockerimagetorun:latest

경우에 따라 docker-compose.yml 또는 CLI에서 값을 설정하는 것보다 docker 데몬에 대한 글로벌 구성을 편집하는 것이 더 적절할 수 있습니다.

다음은 데몬 구성 파일에 대한 설명서입니다.

구성 편집 방법 중 하나를 선택합니다.

  1. Docker Desktop에서 이동할 수 있는Settings->[Docker Engine].
  2. 리눅스에서 기본 파일을 편집할 수 있습니다./etc/docker/daemon.json
  3. 창에%programdata%\docker\config\daemon.json

구성 파일을 편집하여 다음을 변경합니다.shm기본 크기

예:

{
   ...
   "default-shm-size" : "128M"
   ...
}

변경 후 구성을 다시 로드하려면 도커를 다시 시작해야 할 수 있습니다.

언급URL : https://stackoverflow.com/questions/30210362/how-to-increase-the-size-of-the-dev-shm-in-docker-container

반응형