2017-02-16 25 views
7

У меня есть Докер-compose.yml файлдокер монтируемого с local_lock = все

volumes: 
    nfs: 
     driver: local 
     driver_opts: 
     type: nfs 
     o: addr=192.168.100.1,rw 
     device: ":/mnt/storage" 

мой контейнер смонтировали объем с параметрами:

type nfs (rw,relatime,vers=3,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=192.168.100.1,mountvers=3,mountproto=tcp,local_lock=none,addr=192.168.100.1) 

с local_lock = нет и я могу» t изменить эту опцию на local_lock = все Я пробовал:

volumes: 
    nfs: 
     driver: local 
     driver_opts: 
     type: nfs 
     o: addr=192.168.100.1,rw,local_lock=all 
     device: ":/mnt/storage" 

и

volumes: 
    nfs: 
     driver: local 
     driver_opts: 
     type: nfs 
     o: addr=192.168.100.1,rw 
     device: ":/mnt/storage" 
     local_lock: all 

, но ничего не меняется

+0

Если это какой-либо синтаксис, он будет первым с 'o: addr = 192.168.100.1, rw, local_lock = all'. Вы удалили и воссоздали том с настройкой этого параметра? – BMitch

+0

@BMitch Я понимаю, что эта проблема может исходить от Linux/Ubuntu/NFS, а не от Docker. Если я попытаюсь вручную установить мой том в Ubuntu с помощью 'mount -o nfsvers = 4, nolock ...', я по-прежнему вижу 'local_lock = none' в' mount'output. Это проблема Ubuntu? Или NFS 4? – alexpirine

+0

@alexpirine docker просто передаст эту опцию через драйвер ОС и NFS, так что это сильная возможность. – BMitch

ответ

0

Обойти это не отвечает на вопрос, чтобы создать NFS монтируется непосредственно на хосте, а затем экспортировать установленную папку в объеме Докер. Таким образом, блокировки NFS больше не требуются для контейнеров Docker.

Не идеальное решение для Docker Swarm, так как оно требует поддержки монтирования NFS на каждом узле роя.

+0

clusterssh для фиксированного количества виртуальных машин может помочь или возможно установить vms – herm

0

Синтаксис вы хотите первый вариант:

volumes: 
    nfs: 
     driver: local 
     driver_opts: 
     type: nfs 
     o: addr=192.168.100.1,rw,local_lock=all 
     device: ":/mnt/storage" 

Это просто проход через к ОС. Причина, по которой вы, вероятно, не видите разницы с этим томом, заключается в том, что local_lock указан как опция NFS 2 или NFS 3, поэтому, если вы используете NFS 4, этот вариант, вероятно, игнорируется.

+0

Хм, это правильный ответ, но не решает проблему, к сожалению ... Любой способ использовать локальные блокировки в NFS 4? – alexpirine

+0

Я не верю, что это поддерживаемая функция в nfs4. Если вам нужен этот параметр, вам нужно будет понизить. – BMitch

 Смежные вопросы

  • Нет связанных вопросов^_^