- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章解决docker CMD/ENTRYPOINT执行sh脚本报: not found/run.sh:由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
Dockerfile配置没有问题,为什么执行ENTRYPOINT命令时一直错误?
容器一启动就退出了.
查了不少资料,想了好久才发现原因.
run.sh是被COPY指令复制到容器中的,而本机是windows,默认的换行符是\n,故而复制过去无法被执行.
解决办法很简单,切换文件格式为LF即可.
补充知识:docker中启动容器时CMD调用的sh脚本中if命令报未预期的符号 if[[的解决办法 。
最近通过Dockerfile编写镜像,CMD中调用的是sh脚本(start.sh)进行启动容器,通过docker run启动时,启动不成功,进行docker logs 容器ID,发现报错为:未预期的符号 if [[ 。
我直接在外部linux系统调用执行start.sh是成功的,通过docker exec 进入容器,在容中调用start.sh也未报错,命令中需要启动的程序都成功启动.
脚本直接执行没问题,通过docker run却报错,百思不得其解.
start.sh中报错代码段如下 。
1
2
3
4
5
6
7
|
if
[[ -e
/home/dc/testnn-aaa
.zip ]];
then
rm
-rf
/home/testnn-aaa
unzip -q -o -d
/home
testnn-aaa.zip
echo
"unzip zip finished"
else
echo
"dc zip not exist"
fi
|
经过查阅比较,因为我的start.sh在报错语句之前也有if语句,但是没报错,发现两处区别为第一处if使用的是单[],将代码改为[],则成功,修改如下:
if [ -e /home/dc/testnn-aaa.zip ];then 。
以上这篇解决docker CMD/ENTRYPOINT执行sh脚本报: not found/run.sh:就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我.
原文链接:https://blog.csdn.net/le_17_4_6/article/details/104557722 。
最后此篇关于解决docker CMD/ENTRYPOINT执行sh脚本报: not found/run.sh:的文章就讲到这里了,如果你想了解更多关于解决docker CMD/ENTRYPOINT执行sh脚本报: not found/run.sh:的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
我是 Java 新手,我遇到了这个我无法解决的问题。我继承了这个项目,并且我的 scriptlet 之一中有以下代码: DefaultLogger.logMessage("DEBUG path: "+
在做web应用的自动化测试时,定位元素是必不可少的,这个过程经常会碰到定位不到元素的情况(报selenium.common.exceptions.NoSuchElementException),一般
我之前已经这样做过,但令我惊讶的是 CListCtrl 不会以颜色显示文本。我在对话框上有 ListView 控件。我正在使用 VS2010,是否还缺少其他东西? void CGameView::On
我正在尝试计算 4 个表中每个学生的 GPA: Student(STUDENT_ID, STUDENT_LNAME, STUDENT_FNAME, MAJOR) Course(COURSE_NO, C
当我在 windows 和 mac 上使用 jasper 报告时它工作正常,当我将我的应用程序部署到 linux 机器 并尝试生成它抛出的报告时 net.sf.jasperreports.engine
我正在构建 iOS 应用并尝试实现应用内购买(非消费品)。 所有 bundle ID 等都已设置并正常工作,当我获取 Apple Store 服务器时,我可以看到我的产品有效。但是,在测试时,我在 p
我正在尝试使用非固定字符数组读取用户输入,但当我在键盘上输入内容时它只是软崩溃(没有崩溃窗口)。当我在在线 C 编译器上运行它时,它说 Segmentation fault (core dumped)
事实: 无根 podman 非常适合 uid 1480 无根 podman 为 uid 2088 失败 中央操作系统 7 内核 3.10.0-1062.1.2.el7.x86_64 podman 版本
根据 homebrew-brew 官方的解释得知,MongoDB 不再是开源的了,并且已经从 Homebrew中移除 #43770 正是由于 MongoDB 的商业化不太理想,所以它选择了闭源。所
我用命令禁用collectstatic heroku config:set DISABLE_COLLECTSTATIC=1 成功将我的项目推送到 Heroku 后,手动 collectstatic 如
代码如下: public class TryStuffOutHere { public static void main(String[] args) {
我已经设置了我的 redis 服务器,以便 CONFIG GET dir --> "/var/lib/redis" 和 CONFIG GET dbfilename --> "redis.rdb". 但
我是一名优秀的程序员,十分优秀!