来源/opt/nvm/nvm.sh通过Docker Compose

时间:2018-02-06 10:02:51

标签: node.js bash docker docker-compose nvm

我有Dockerfile。当前用户为root。该脚本将NVM_DIR设置为/opt/nvm。该脚本通过curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash命令安装NVM(https://github.com/creationix/nvm)。我将入口点设置为ENTRYPOINT ["npm", "run"],将命令设置为CMD ["start"]

然后我尝试通过Docker Compose启动它。现在,由于NVM安装程序脚本将以下代码添加到~/.bash_profile~/.zshrc~/.profile~/.bashrc文件中。

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm

正如您所看到的,NVM_DIR设置为"$HOME/.nvm",因为我将NVM安装到/opt/nvm,因此我们的情况不正确。所以我在Docker Compose文件中设置NVM_DIR变量:

environment:
  - NVM_DIR=/opt/nvm

但我知道这是一个非交互式shell。但这并不起作用。我怀疑NVM不是由非交互式shell提供的。

通过Docker Compose运行Docker镜像时如何获取/opt/nvm/nvm.sh文件?

0 个答案:

没有答案