![](/img/trans.png)
[英]docker-compose=> sh: 1: ./entrypointsh: not found but entrypoint shows in LS
[英]docker-compose: file shows up with ls but can't be found when executed
我想為我的 docker-compose 前端容器運行一個 shellscript。 當我嘗試運行該文件時,我收到一條錯誤消息,提示找不到 shell 文件:
services.app | /usr/local/bin/docker-entrypoint.sh: exec: line 8: /usr/src/app/frontend/entrypoint.sh: not found
這是我的 docker-compose 文件:
docker-compose 條目:
frontend:
build: ./frontend
image: app
container_name: services.app
volumes:
- .:/usr/src/app
ports:
- "3000:3000"
env_file: ./.env
stdin_open: true
command: /usr/src/app/frontend/entrypoint.sh prod
但是,當我在 docker-compose 文件中運行command: ls /usr/src/app/frontend/
,我可以看到該文件:
services.app | entrypoint.sh
shell 文件真的丟失了還是我誤解了這個錯誤? 有關如何修復它的任何建議?
編輯:entrypoint.sh 腳本:
#!/bin/bash
cp -r /usr/src/cache/node_modules/. /usr/src/app/node_modules/
exec npm start
好吧,我可以模擬錯誤,盡管我不能說這就是您的情況:
$ mkdir /tmp/demo
$ ln -s /no/such/dir/entry.sh /tmp/demo/entry.sh # create soft link to non existent file
$ chmod +x /tmp/demo/entry.sh # and make it executable for good measure
$ ls /tmp/demo # so now we can list the file
entry.sh
$ /tmp/demo/entry.sh # but cannot execute it
-bash: /tmp/demo/entry.sh: No such file or directory
所以最后對我sh
只是在命令前面附加sh
:
command: sh /usr/src/app/frontend/entrypoint.sh prod
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.