docker의 우분투에서 / proc / sys / net에서 전체 옵션을 얻는 방법 such file or directory 내 도커에는 몇 가지

컨테이너의 / proc / sys / net / core에서 일부 네트워크 커널 설정을 재구성하려고합니다. 그러나 일부 옵션이 docker ubuntu : 14.04에서 누락되어 구성 할 수 없습니다. 예:

$ sysctl -w net.core.rmem_max=262144
sysctl: cannot stat /proc/sys/net/core/rmem_max: No such file or directory

내 도커에는 몇 가지 옵션이 있습니다.

내 호스트 우분투에서 :

$ ls /proc/sys/net/core/
bpf_jit_enable         message_burst           rmem_default           xfrm_acq_expires
busy_poll              message_cost            rmem_max               xfrm_aevent_etime
busy_read              netdev_budget           rps_sock_flow_entries  xfrm_aevent_rseqth
default_qdisc          netdev_max_backlog      somaxconn              xfrm_larval_drop
dev_weight             netdev_rss_key          warnings
flow_limit_cpu_bitmap  netdev_tstamp_prequeue  wmem_default
flow_limit_table_len   optmem_max              wmem_max

도커의 우분투에서 :

$ ls /proc/sys/net/core/
somaxconn  xfrm_acq_expires  xfrm_aevent_etime  xfrm_aevent_rseqth  xfrm_larval_drop

–net = none / default (호스트를 사용하고 싶지 않습니다) 또는 –v / proc / sys / net : / proc / sys / net으로 도커를 실행하려고 했지만 변경 사항은 없습니다.

kernel.org에서 이것을 읽었습니다 : “/ proc / sys / net … 커널 설정에 따라 일부만 볼 수 있습니다.”

완전한 옵션을 얻는 방법이 있습니까?

감사!



답변

이러한 파일은 --net=host컨테이너 내에 새 네트워크 스택을 만들지 않고 호스트 네트워크 스택의 구성을 나타내며 파일은 컨테이너에 의해 ‘덮어집니다’.

호스트 스택에 액세스 해야하는 경우 다른 위치에 마운트하는 것을 고려할 수 있습니다. / net using을 말한 -v /proc/sys/net/:/net다음 echo value > /net/my/filesysctl을 사용 하는 대신 간단히 사용하십시오 .