当前位置: 首页 > news >正文

docker以挂载目录启动容器报错问题的解决

拉取镜像:

docker pull elasticsearch:7.4.2 
docker pull kibana:7.4.2 

创建实例:

  1. mkdir -p /mydata/elasticsearch/config
  2. mkdir -p /mydata/elasticsearch/data
  3. echo "http.host: 0.0.0.0" >> /mydata/elasticsearch/config/elasticsearch.yml

启动容器并并建立容器和宿主机目录的关联

docker run --name elasticsearch -p 9200:9200 -p 9300:9300 \ -e "discovery.type=single-node" \ -e ES_JAVA_OPTS="-Xms64m -Xmx512m" \ -v /mydata/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \ -v /mydata/elasticsearch/data:/usr/share/elasticsearch/data \ -v /mydata/elasticsearch/plugins:/usr/share/elasticsearch/plugins \ -d elasticsearch:7.4.2

提示下面的错误:

docker: Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error mounting "/mydata/elasticsearch/config/elasticsearch.yml" to rootfs at "/usr/share/elasticsearch/config/elasticsearch.yml": mount /mydata/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml (via /proc/self/fd/6), flags: 0x5000: not a directory: unknown: Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type.

出错原因在elasticsearch.yml文件的挂载上,根源是这一行代码

echo "http.host: 0.0.0.0" >> /mydata/elasticsearch/config/elasticsearch.yml

由于config是目录,elasticsearch.yml是文件,它们原先都不存在,直接往一个不存在的目录里的文件写入内容,虽然能创建目录成功并将内容写入文件,但以上面命令启动容器的时候会发现无法正常启动,正确的方式是如果涉及到文件,应该先创建目录,再创建目录里的文件,往文件里写内容,再以上面的命令启动容器就没问题了。参照下图:

http://www.lryc.cn/news/361037.html

相关文章:

  • MySQL—函数—流程控制函数(基础)
  • 2023年全国职业院校技能大赛(高职组)“云计算应用”赛项赛卷7(私有云)
  • Jenkins、GitLab部署项目
  • 21.Redis之分布式锁
  • Mysql基础学习:mysql8 JSON字段查询操作
  • 搭建基于Django的博客系统数据库迁移从Sqlite3到MySQL(四)
  • 24年护网工具,今年想参加护网的同学要会用
  • 解决TrueNas Scale部署immich后人脸识别失败,后台模型下载异常,immich更换支持中文搜索的CLIP大模型
  • 面试高频问题----2
  • Nginx的配置文件-详细使用说明
  • YOLOv5改进 | 卷积模块 | 提高网络的灵活性和表征能力的动态卷积【附代码+小白可上手】
  • 23、linux系统文件和日志分析
  • 安装VS2017后,离线安装Debugging Tools for Windows(QT5.9.2使用MSVC2017 64bit编译器)
  • 路由策略实验2
  • Linux网络-守护进程版字典翻译服务器
  • Python 推导式详解:高效简洁的数据处理技巧
  • 车联网安全入门——ICSim模拟器使用
  • leetcode - 20.有效的括号(LinkedHashMap)
  • 多维数组的动态内存分配(malloc和new)
  • 71、评测OrangePi AIpro开发板和USB CAMERAOAK视频解码+推理+编码+推流测试
  • 为什么需要开局调用函数?
  • QT-demo:0轴分布图表
  • git远程仓库限额的解决方法——大文件瘦身
  • 碰撞检测技术在AI中的重要作用
  • UE5 Cesium2 最新使用地理配准子关卡构造全球场景
  • 【Java数据结构】详解LinkedList与链表(二)
  • 【精读文献】J. Environ. Manage.|青藏高原生态恢复项目下植被覆盖动态及其对生态系统服务的约束效应
  • QT之常用控件
  • 【嵌入式硬件】DRV8874电机驱动
  • 考研数学:有些无穷小不能用等价无穷小的公式?