背景:

我们项目组使用的是腾讯云的容器k8s,镜像是研发同学构建的,其中的配置文件通过configmap的方式进行挂载。

今天,新增了一个需求,需要在pod启动时需要新建一个路径 /app/subserver/config/disconf/,把我们的配置文件挂载到该目录下。但是启动的时候发现死活起不来,主要报错:read only fie system

我检查了挂载的路径设置,也检查了容器内的路径权限问题。发现都没有问题,权限都有读写执行的,为什么会报只读系统呢?

在搜索引擎找了一番,有几个类似的错误,不过大多是宿主机的报错,不是pod的报错。比如下面:

找不到,只能回到问题上来。

权限也有,路径也在,为什么还是说是只读文件系统呢?

百度也不是万能的,必应也不行,谷歌试试?但正好看到旁边研发同事有空,遂请教。大佬回:这个启动时候要创建写入文件,路径有吗?权限有吗?我一一检查,都有。大佬沉吟两秒:你进去创建一个文件试试。

另外提一句,腾讯云的容器服务是可以设置启动命令的,比如我现在,就需要让pod启动后休眠一会儿,不然因为pod报错,它会不断自启,那就没办法进去检查了。在高级设置里面,或者可以直接加在yaml文件里:

进入容器,尝试创建文件:

熟悉的报错。

明明路径有权限,为什么提示只读呢?

大佬问:他这个路径是主机文件系统的吗?

主机文件系统?我看看。

一语惊醒梦中人!

这个不是pod的主机路径啊,这是挂载的configmap的路径啊。原来如此。因为挂载的configmap是外部挂载的,不属于pod自有的系统路径,所以是无法在一个configmap路径下面再新建路径的。

那就好办了。把 /app/subserver/config/disconf/ 改为 /app/config/disconf/ 这样他就是在/app/这个路径下面创建路径并写入文件,这样应该就没问题了吧。

调整挂载的路径之后,可以看到,已经正常写入了三个文件:

总结:容器中挂载的configmap路径,不能再次作为新建文件的路径,因为不属于pod的系统路径。

腾讯云容器挂载configmap报错:read only fie system相关推荐

  1. 腾讯云短信接口报错1014

    {"result":1014,"errmsg":"\u6A21\u7248\u672A\u5BA1\u6279\u6216\u5185\u5BB9\u ...

  2. 腾讯云COS创建Bucket报错

    com.qcloud.cos.exception.CosServiceException: Access Denied. (Status Code: 403; Error Code: AccessDe ...

  3. linux 复制硬盘 启动报错,linux挂载硬盘报错(you must specify the filesystem type)

    今天自己的虚拟机磁盘用完成,于是想加一磁盘,当挂载时发现报错you must specify the filesystem type.(注:我的系统环境是lcentos6.3装在virtualbox的 ...

  4. 腾讯云服务器挂载云硬盘数据盘并初始化云硬盘

    在腾讯云后台挂载云硬盘 进入CVM或者Lighthouse管理,这里以Lighthouse为例.选中数据盘,选择实例并挂载,大约需要1分钟. 手动挂载云硬盘后,云硬盘为脱机状态,需登录实例完成初始化操 ...

  5. 腾讯云服务器挂载云硬盘

    腾讯云服务器挂载云硬盘 1.到腾讯云服务器购买一块云硬盘,然后直接挂载到你的服务器下就可以了,如果服务器不能识别,请看部分存量云服务器无法识别弹性云盘的解决方法 2.挂载完云硬盘之后,云硬盘默认处于未 ...

  6. 腾讯云容器团队内部Istio专题分享

    转载:https://juejin.im/post/5c5408ee6fb9a049f154a160 ServiceMesher 2019年02月01日 阅读 70 腾讯云容器团队内部Istio专题分 ...

  7. ubuntu展示点云使用boost::this_thread报错

    Ubuntu展示点云使用boost::this_thread报错 Ubuntu使用boost::this_thread展示点云 boost::shared_ptr<pcl::visualizat ...

  8. 腾讯云硬盘挂载宝塔命令

    腾讯云硬盘挂载命令 yum install wget -y && wget -O auto_disk.sh http://download.bt.cn/tools/auto_disk. ...

  9. linux 查看硬盘报错_linux中挂载硬盘报错(you must specify the filesystem type)

    linux中挂载硬盘报错提示 you must specify the filesystem type ,意思是告诉我们必须要指定一个系统分区了,由于自己能看懂几句英文,所以解决起来也方便了,下面一起 ...

最新文章

  1. gentoo linux mldonkey 问题解决
  2. python 画图 内存-10种检测Python程序运行时间、CPU和内存占用的方法
  3. python精通-11周精通python计划(完结)-网易云课堂
  4. vscode + plantuml实现uml的编写
  5. 使用spring boot+shiro+jwt+mybatis-plus搭建项目框架
  6. java jsonp_java结合使用Jsonp的例子
  7. VS2019 禁止Web项目停止调试后自动关闭浏览器(在浏览器窗口关闭时停止调试程序,在调试停止时关闭浏览器)
  8. 用PL/SQL Develpoer工具完成导入和导出
  9. 4位先行进位电路 logisim_你真的了解74系列集成电路吗?让我帮你总结一下
  10. 一颗接一颗的飞鸽传书
  11. es6 数组去重,数组里面的对象去重
  12. 2怎么升级固件_西门子PLC固件升级,S71200 固件升级方法
  13. How to check number of Active connections in SQL server?
  14. 西威变频器 服务器显示,西威变频器故障查询及操作方法;
  15. excel筛选,排序
  16. 阿里巴巴元境亮相第二届中国国际数字产品博览会
  17. 【ISO】Windows10系统ISO镜像怎么从微软官网下载?
  18. Apache Ant官网下载、安装及环境变量配置过程详细图文说明(以windows系统为例)
  19. imazing显示无法连接服务器,为什么苹果手机连接不上iMazing
  20. 图像传感器的市场状况和主要厂商

热门文章

  1. C. Ivan the Fool and the Probability Theory
  2. 《Temple Run》系列衍生放置cq9电子游戏《Temple Run:Idle Explorers》于双平台推出试玩
  3. 导电滑环一般用什么材料
  4. 程序猿实习生入职的感受
  5. 2011湖南互联网站长大会开始接受报名
  6. dplyr count 函数
  7. utils.general详解1
  8. c#日期(datetime)增减计算针对月底的处理方法
  9. a标签之target属性----在何处打开链接
  10. StackOverflow 提问艺术