永久修改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
下面是一个示例,大家可以试试:
热门推荐
“链主”中广核:2025将打造清洁能源“原创技术策源地”
亚甲基蓝在观赏鱼疾病治疗中的使用方法与注意事项
美国税务申报时间:了解美国税务申报截止日期及延期规定
美国报税季来了!如何高效准备,避免常见错误?
多肉水培养殖方法(解密多肉水培种植技巧)
杭州这个空中花园火了,游客:摩登大楼和江南园林同框,太别致了
玉皇管什么:玉皇职责、含义、别名及形象解析
还在按揭的房子能进行过户吗?一文详解按揭房交易与贷款问题
二手房交易中的贷款合同及相关法律问题
那一年,许家印与特朗普擦肩而过
晨跑还是夜跑?跑步的黄金时间真的存在吗?
平台每日活跃指标是什么,揭秘背后的数据奥秘!
自行车前叉锁死和不锁死区别
银行的企业文化建设对员工有什么影响?
剪辑,让故事更精彩!
Excel中的表格批量生成word表格(Office篇)
怎么把excel的长表格复制到word
12366每周热点|收藏! 个税退税显示“税务审核中”别着急!
XRP是什么币?中文叫什么?
液化气罐安全使用指南:存放、使用与应急处理全攻略
最适合“懒人”种植的几种蔬菜,一次种植可连续采摘多年!
五脏调养秘籍与具体建议
新房毛坯房验收攻略:如何确保装修质量
拜仁激战勒沃库森:战术变阵与心态博弈下的绿茵风云
芭蕾入门动作训练指南
1月-3月适合去的4个最佳旅行地,景观赏味期长,人文风情浓厚
商法是什么
元宇宙来了,为家庭教育带来哪些可能?
教师论文投稿指南:实用网站与期刊推荐
如何跟公司协商被迫离职讨要赔偿