gpt4 book ai didi

bash - 从终端直接执行 docker 可以正常工作,但从 .sh 脚本内部执行时不行?

转载 作者:行者123 更新时间:2023-12-04 19:05:55 26 4
gpt4 key购买 nike

我在 ubuntu 20.04 我使用 sudo snap install docker 安装了 docker现在,当我直接从终端(安装了 ubuntu 的终端)运行 docker 命令时,它可以正常工作,但是当我使用 bash ./script.sh 或 ./script.sh 从终端执行 .sh 脚本时,我收到一个错误 docker : 找不到相关命令。
这是脚本:

#!/bin/bash
source $(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/env.sh

docker run -e "NODE_ENV=dev" -it --rm --name my-npm-2 -v $PROJECT_HOME/code:/var/www/html/code -w /var/www/html/code node:14 npm install

docker run -e "NODE_ENV=dev" -it --rm --name my-npm -v $PROJECT_HOME/code/web:/var/www/html/code/web -w /var/www/html/code/web node:14 npm install


$SCRIPT_HOME/buildjs_dev.sh

docker exec project_php sudo php -d memory_limit=-1 /usr/local/bin/composer install --working-dir=/var/www/html/code


docker exec project_php chown -R www-data:www-data /var/www/html/code/var/cache
docker exec project_php chown -R www-data:www-data /var/www/html/code/var/log
我一般是 linux 新手,我不知道问题是出在脚本本身还是为什么它不能识别 docker?

最佳答案

您正在脚本开头定义一个源文件,该文件可能会更改 PATH 变量。尝试通过注释源代码行或使用完整路径调用 docker 命令。

关于bash - 从终端直接执行 docker 可以正常工作,但从 .sh 脚本内部执行时不行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69690947/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com