docker - 如何自动避免 docker mount /etc/hosts /etc/hostname /etc/resolv.conf
问题描述
我试图与一些朋友分享我的 GPGPU 工作站。由于他们使用不同的环境,我正在考虑使用 docker 容器。
df -h
在 docker 容器中运行时,我发现:
Filesystem Size Used Avail Use% Mounted on
overlay 10G 24K 10G 1% /
tmpfs 64M 0 64M 0% /dev
tmpfs 3.8G 8.1M 3.8G 1% /run
tmpfs 3.8G 0 3.8G 0% /tmp
tmpfs 3.8G 0 3.8G 0% /run/lock
/dev/sda3 465G 6.2G 459G 2% /etc/hosts
shm 64M 0 64M 0% /dev/shm
tmpfs 3.8G 0 3.8G 0% /sys/fs/cgroup
我惊讶地发现它/dev/sda3
安装在/etc/hosts
主机磁盘大小可见的情况下。我不愿意被看到。
虽然可以通过rc.local
脚本或者一些服务进行umount,但是有什么办法可以避免docker自动挂载,让它完全由容器管理,就像普通的虚拟机一样?
Docker 版本是18.09.6, build 481bc77
Docker 容器由以下人员启动:
docker run -it --net=macvlan -d --cap-add=SYS_ADMIN --tmpfs /tmp --tmpfs /run --tmpfs /run/lock -v /sys/fs/cgroup:/sys/fs/cgroup:ro -e "container=docker" --device /dev/fuse -v /dev/hugepages:/dev/hugepages --runtime=runc --storage-opt "size=10G" ubuntu:16.04 /sbin/init
Dockerfile 自动从 docker hub 获取,无需任何更改。
解决方案
推荐阅读
- python - BeautifulSoup Amazon Web Scraping - NoneType 错误
- javascript - 如何在 Discord.js 中使用超时
- python-3.x - 在pythonista中添加小数时如何防止计算错误?
- testing - 手风琴未通过可访问性检查
- react-native - 如何构建完全在智能合约上运行的移动应用程序?
- java - JavaFx 将输入控件标记为强制
- python - 在 Pandas 中使用整数有效地切片非整数多级索引
- python - 使用 Python 的 asyncio.Semaphore 控制 HTTP 请求的并发性
- javascript - 我将如何创建这个跳转页面?
- python - Tkinter回调Python IndexError中的Tkinter异常:列表索引超出范围