dockerfile ENTRYPOINT 执行.sh脚本提示找不到文件或文件不存在 No such file or directory

我这里记录的是我遇到的一种特殊情况,如果你也遇到了这个问题,且都试了在百度中找到的解决方法还没有解决可以看看是不是和我遇到的问题一样。

在Dockerfile中,我ADD了两个文件,一个是jar包,一个是一个执行jar包的.sh文件

复制代码
# 项目工作目录
ENV base_dir /home/admin-server/deploy

WORKDIR /
# 添加jar包到docker中
ADD giraffe-manor-admin.jar $base_dir/server/admin-manager.jar
ADD run_admin_server.sh $base_dir/server/run_admin_server.sh

但是在使用命令:

复制代码
docker run -it -d -p 8087:8087 -v /home/server/giraffe/deploy:/home//admin-server/deoply admin-manager:1.12

就会提示

/bin/sh: 0: cannot open /home/admin-server/server/run_admin_server.sh: No such file

后来发现是挂载点的问题,在run命令中设置的挂载目录/home//admin-server/deoply和ADD的目录重复了,因为在run中挂载的目录在每次启动docker是都会删除重新创建,所以我在dockerfile中ADD的文件就被覆盖删除了。

相关推荐
雪可问春风1 天前
docker环境部署
运维·docker·容器
双份浓缩馥芮白1 天前
【Docker】Linux 迁移 docker 目录(软链接)
linux·docker
kobe_OKOK_1 天前
S7 adapter Docker run
运维·docker·容器
一个欠登儿程序员1 天前
在国产服务器上通过 Docker 部署 Windows 虚拟机
服务器·windows·docker
Hadoop_Liang1 天前
构建Spring Boot项目Docker镜像
spring boot·后端·docker
Learn-Python1 天前
修改docker容器内文件后让其生效
运维·docker·容器
赵丙双1 天前
docker restart 策略
docker·restart
工具罗某人1 天前
docker实现redis-cluster模式集群部署
java·redis·docker
杨浦老苏1 天前
轻量级RSS源处理中间件FeedCraft
人工智能·docker·ai·群晖·rss
Devin~Y1 天前
大厂 Java 面试实战:从电商微服务到 AI 智能客服(含 Spring 全家桶、Redis、Kafka、RAG/Agent 解析)
java·spring boot·redis·elasticsearch·spring cloud·docker·kafka