永久修改Docker容器中hosts文件的三种方法
创作时间:
作者:
@小白创作中心
永久修改Docker容器中hosts文件的三种方法
引用
CSDN
1.
https://blog.csdn.net/a17432025/article/details/138244684
在使用Docker时,有时需要修改容器中的hosts文件。但是,如果容器被重新启动,hosts文件就会被重置。那么,如何才能永久修改hosts文件的条目呢?本文将介绍三种不同的方法。
一、修改docker run参数
这是Docker官方推荐的方法。具体用法如下:
docker run --add-host=www.sina.com.cn:127.0.0.1 xxx -it /bin/bash
这个例子在创建容器时将新浪站点指向本机。如果需要添加多个条目,就增加几个--add-host参数即可。
类似的方法是在容器启动时将该文件挂载到容器内的/etc/hosts文件中,例如:
docker run -v /etc/hosts.container:/etc/hosts ...
这个例子是将宿主机器上的hosts.container文件挂接到容器中。
二、修改compose的yaml文件
利用extra_hosts小节把需要添加的host编写好,创建时就会自动创建/etc/hosts文件。如下所示:
php72:
container_name: "php72"
hostname: "php72"
image: "xxxx"
extra_hosts:
- "www.sina.com.cn:127.0.0.1"
- "www.google.com:127.0.0.1"
volumes:
- xxx:xxx
三、直接修改hostconfig.json
在实际使用中,由于容器已经创建,大家都不太愿意重新创建,以免出现各种兼容性问题。因此,如何在已经创建好的容器里面,永久添加固定的hosts文件条目呢?目前一个可行的办法就是直接修改容器的hostconfig.json文件。具体步骤为:
1.停止docker
此环节必须做,否则任何对hostconfig的修改都无效,会自动改回原来状态。
systemctl stop docker
2.进入容器目录并修改
首先找到容器的目录,进入/var/lib/docker/containers/目录,找到自己的容器目录(一串字母数字),进入后,编辑hostconfig.json
cd /var/lib/docker/containers/xxxxxx
vi hostconfig.json
找到"ExtraHosts":null部分,将其替换为你想添加的hosts小节内容即可,如替换为:
"ExtraHosts":["www.sina.com.cn:172.17.0.1","www.baidu.om:127.0.0.1"]
保存后退出。
3.重启docker
重启docker后完成修改,测试hosts文件已经正式添加到指定容器。
systemctl start docker
下面是一个示例,大家可以试试:
热门推荐
派币技术揭秘:是财富机遇还是骗局?
韩国热捧派币,投资需警惕骗局
灯的多重象征,让你的文案闪闪发光
破解孩子沉默难题:5大技巧改善亲子沟通
教育孩子先懂这5点,让亲子关系更和谐
闵行七宝:千年古镇里的亲子游乐园
去亚龙湾沙滩坐几路车?公交路线全解析
《捉泥鳅》:一首儿歌里的文化密码
北京两座古寺:雍和宫的皇家气派与卧佛寺的铜佛奇观
动画图解嵌入式常见的通讯协议:SPI、I²C、UART、红外
四年级数学课堂管理新招数:让学生成为课堂的主角
四年级数学教学新路径揭秘
四年级数学成绩逆袭秘籍,学霸都在用!
自来水存在多重隐患,专家建议安装净水器保安全
富含17种氨基酸,牛蒡助力冬季养生防流感
老年痴呆早期预警信号,这些细节别忽视
湖北原矿绿松石价格波动,收藏市场受冲击
猪血:秋冬养生的营养之选
鸭血PK猪血,谁才是补血王者?
连衣裙的时尚革命:从维多利亚到社交媒体时代
复方甘草口服溶液使用指南:从用量到禁忌,这些要点要记牢
甘草止咳药饮食禁忌:孕妇禁用,高血压患者慎食
狗狗腹泻的饮食管理:白米饭配鸡肉的正确喂食法
狗狗拉稀警惕犬瘟热和犬细小病毒,定期接种疫苗是关键
科学护理让贵宾犬阿拉斯加远离拉稀困扰
科学选购狗粮指南:让狗狗远离拉稀困扰
贝加尔湖:历代文人的神秘北冥
贝加尔湖:庄子哲学中的北冥象征
七宝地铁站最新交通指南出炉!
茨菇当季,这些美味做法你get了吗?