草庐IT

SH_SECURE

全部标签

linux - 当 docker 使用 `/bin/sh -c` 运行 SIGTERM 时,SIGTERM 未到达 Node 脚本

当我的Dockerfile以结尾时CMDnode.docker使用命令/bin/sh-c"node."运行该容器而不是简单的node.(我知道,我可以用CMD["node","."]做到这一点)。我认为这种行为实际上很好,因为这意味着在容器内PID1是/bin/sh而不是我不起眼的Node脚本。如果我理解正确PID1负责收割孤立的僵尸进程,我真的不想对此负责...所以如果/bin/sh能做到,那就太好了。(其实我以为这就是docker重写我的CMD的原因)。问题是当我发送SIGTERM通过/bin/sh-c"node."到容器(以docker-composerstop开头)或docke

linux - 当 docker 使用 `/bin/sh -c` 运行 SIGTERM 时,SIGTERM 未到达 Node 脚本

当我的Dockerfile以结尾时CMDnode.docker使用命令/bin/sh-c"node."运行该容器而不是简单的node.(我知道,我可以用CMD["node","."]做到这一点)。我认为这种行为实际上很好,因为这意味着在容器内PID1是/bin/sh而不是我不起眼的Node脚本。如果我理解正确PID1负责收割孤立的僵尸进程,我真的不想对此负责...所以如果/bin/sh能做到,那就太好了。(其实我以为这就是docker重写我的CMD的原因)。问题是当我发送SIGTERM通过/bin/sh-c"node."到容器(以docker-composerstop开头)或docke

bash - 启动容器进程导致 "exec:\"/bin/sh\": stat/bin/sh: no such file or directory": unknown

我想了解CMD和ENTRYPOINT的工作原理。所以,我只是创建了一个非常简单的DockerfileFROMscratchCMDecho"HelloFirst"ENTRYPOINTecho"Hellosecond"然后我建立这个图像:dockerbuild-tmy_image.日志如下:Step1/3:FROMscratch--->Step2/3:CMDecho"HelloFirst"--->Usingcache--->9f2b6a00982fStep3/3:ENTRYPOINTecho"Hellosecond"--->Usingcache--->1bbe520f9526Success

bash - 启动容器进程导致 "exec:\"/bin/sh\": stat/bin/sh: no such file or directory": unknown

我想了解CMD和ENTRYPOINT的工作原理。所以,我只是创建了一个非常简单的DockerfileFROMscratchCMDecho"HelloFirst"ENTRYPOINTecho"Hellosecond"然后我建立这个图像:dockerbuild-tmy_image.日志如下:Step1/3:FROMscratch--->Step2/3:CMDecho"HelloFirst"--->Usingcache--->9f2b6a00982fStep3/3:ENTRYPOINTecho"Hellosecond"--->Usingcache--->1bbe520f9526Success

shell - Jenkins 文件 : permission denied when running sh step in Docker container

我无法运行一个简单的Jenkinsfile-例如pipeline{agent{label'ssh-slave'}stages{stage('ShellTest'){steps{sh'echo"HelloWorld"'}}}}主服务器上Jenkins的日志文件显示容器已成功启动,但构建作业崩溃并显示如下消息sh:1:/home/jenkins/workspace/pipeline@tmp/durable-34c21b81/script.sh:Permissiondenied以下是我们配置/发现的一些额外内容:我们正在使用RHEL的VM上运行代理我们正在使用DockerPlugin让Jen

shell - Jenkins 文件 : permission denied when running sh step in Docker container

我无法运行一个简单的Jenkinsfile-例如pipeline{agent{label'ssh-slave'}stages{stage('ShellTest'){steps{sh'echo"HelloWorld"'}}}}主服务器上Jenkins的日志文件显示容器已成功启动,但构建作业崩溃并显示如下消息sh:1:/home/jenkins/workspace/pipeline@tmp/durable-34c21b81/script.sh:Permissiondenied以下是我们配置/发现的一些额外内容:我们正在使用RHEL的VM上运行代理我们正在使用DockerPlugin让Jen

Docker Alpine/bin/sh apk 未找到

我正在构建一个新的Docker镜像:FROMalpine:3.4RUNapkupgrade--update但是,它因错误而失败:[INFO]/bin/sh:apk:notfound这似乎在我的本地机器(MacOSX)上运行良好,但是当我尝试在LinuxCentOS7机器上构建它时它失败了。 最佳答案 我遇到了这样的事情。这完全让我大吃一惊,我一度怀疑自己的理智,直到我意识到/sbin不在我的容器的PATH中。#interactivesessionPATH="${PATH}:/sbin"#DockerfileENVPATH="${PA

Docker Alpine/bin/sh apk 未找到

我正在构建一个新的Docker镜像:FROMalpine:3.4RUNapkupgrade--update但是,它因错误而失败:[INFO]/bin/sh:apk:notfound这似乎在我的本地机器(MacOSX)上运行良好,但是当我尝试在LinuxCentOS7机器上构建它时它失败了。 最佳答案 我遇到了这样的事情。这完全让我大吃一惊,我一度怀疑自己的理智,直到我意识到/sbin不在我的容器的PATH中。#interactivesessionPATH="${PATH}:/sbin"#DockerfileENVPATH="${PA

python - 当我通过管道使用 sh ( echo "docker-compose"| sh ) 时出现 "docker-compose... "错误

我有一个具有多容器的应用程序。为了便于安装,我决定使用包装图像。我的预期如下所示$dockerrunmy_applicationinstall|sh->从注册表中提取所有相关图像$dockerrunmy_applicationup|sh->做一些初步的工作,然后把所有的容器弄起来但我遇到了以下问题。$echo"docker-composeexeccassandracqlsh-e'desckeyspaces'"|shTraceback(mostrecentcalllast):File"",line3,inFile"compose/cli/main.py",line57,inmainFil

python - 当我通过管道使用 sh ( echo "docker-compose"| sh ) 时出现 "docker-compose... "错误

我有一个具有多容器的应用程序。为了便于安装,我决定使用包装图像。我的预期如下所示$dockerrunmy_applicationinstall|sh->从注册表中提取所有相关图像$dockerrunmy_applicationup|sh->做一些初步的工作,然后把所有的容器弄起来但我遇到了以下问题。$echo"docker-composeexeccassandracqlsh-e'desckeyspaces'"|shTraceback(mostrecentcalllast):File"",line3,inFile"compose/cli/main.py",line57,inmainFil