Define size for /dev/shm on container engine

2019-01-22 21:56发布

问题:

I'm running Chrome with xvfb on Debian 8. It works until I open a tab and try to load content. The process dies silently...

Fortunately, I have gotten it to run smoothly on my local docker using docker run --shm-size=1G.

There is a known bug in Chrome that causes it to crash when /dev/shm is too small.

I am deploying to Container engine, and inspecting the OS specs. The host OS has a solid 7G mounted to /dev/shm, but the actual container is only allocated 64M. Chrome crashes.

How can I set the size of /dev/shm when using kubectl to deploy to container engine?

回答1:

Mounting an emptyDir to /dev/shm and setting the medium to Memory did the trick!

spec:
  volumes:
  - name: dshm
    emptyDir:
      medium: Memory
  containers:
  - image: gcr.io/project/image
    volumeMounts:
      - mountPath: /dev/shm
        name: dshm


回答2:

docker run --cap-add=SYS_ADMIN --shm-size 2G --name chrome chrome-hd

to run container locally where

--shm-size 2G

is used to tweak shm available size.