我正在开发一个应用程序,在该应用程序中我使用docker-compose.yml运行多个容器。所有容器都已成功启动。其中一个容器包含一个cron文件,其中包含以下内容:
* * * * * sshpass -p root ssh -o StrictHostKeyChecking=no root@myserver"./script.sh" > /proc/1/fd/1 2> /proc/1/fd/2每当此cron作业尝试运行时,我在intelliJ控制台中都会收到以下错误:
cron_1 | crond: USER root pid 35 cmd sshpass -p root ssh -o StrictHostKeyChecking=no root@myserver"./script.sh" > /proc/1/fd
/1 2> /proc/1/fd/2
: nonexistent directory | /bin/sh: can't create /proc/1/fd/2当我登录容器cli时,我可以看到目录位置存在:-

它在ubuntu上运行正常,但不能在windows上运行。
下面是docker版本的输出
Client: Docker Engine - Community
Cloud integration: 1.0.7
Version: 20.10.2
API version: 1.41
Go version: go1.13.15
Git commit: 2291f61
Built: Mon Dec 28 16:14:16 2020
OS/Arch: windows/amd64
Context: default
Experimental: true
Server: Docker Engine - Community
Engine:
Version: 20.10.2
API version: 1.41 (minimum version 1.12)
Go version: go1.13.15
Git commit: 8891c58
Built: Mon Dec 28 16:15:28 2020
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.4.3
GitCommit: 269548fa27e0089a8b8278fc4fc781d7f65a939b
runc:
Version: 1.0.0-rc92
GitCommit: ff819c7e9184c13b7c2607fe6c30ae19403a7aff
docker-init:
Version: 0.19.0
GitCommit: de40ad0有没有人能帮助一下如何让cron在容器内运行?
谢谢
发布于 2021-03-23 11:31:39
确保cron文件中的行尾设置为Linux/UNIX
https://stackoverflow.com/questions/66335651
复制相似问题