繁体   English   中英

Docker,在新的bash shell中运行NVM脚本

[英]Docker, running NVM script in a new bash shell

我的Dockerfile中有以下内容:

run apt-get update; \
  apt-get install -y curl && \
  curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.5/install.sh | bash

按照这一行代码,我需要在新的bash shell中运行命令,以便使用从NVM脚本设置的环境变量。

我已经厌倦了以下安装Node.js的工作,但是它不起作用:

run ["/bin/bash", "-c", "nvm install 8.7.0"]

我能做什么?

最好使用Dockerhub存储库并在Dockerfile中使用它。

您可以检查此存储库或此链接以获取更多存储库,请在选择存储库之前阅读说明。

因此,例如,您可以在Dockerfile中添加以下代码行,它将提取nvm映像并进行安装,然后添加您的应用说明。

FROM livingdocs/nvm

或者,您可以阅读他们的Dockerfile并使用他们用于安装nvm的命令

ADD ./.nvmrc /app/.nvmrc
RUN bash -c '. /usr/share/nvm/nvm.sh && cd /app && nvm install && nvm alias default'

如果没有把这个放在另一个仓库中

RUN sudo apt-get update && \
    sudo apt-get install -y build-essential libssl-dev libmysqlclient-dev && \
    sudo apt-get clean && \
    sudo rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*

RUN curl --location https://raw.github.com/creationix/nvm/master/install.sh | sh && \
    sudo /bin/bash -c "echo \"[[ -s \$HOME/.nvm/nvm.sh ]] && . \$HOME/.nvm/nvm.sh\" >> /etc/profile.d/npm.sh" && \
    echo "[[ -s $HOME/.nvm/nvm.sh ]] && . $HOME/.nvm/nvm.sh" >> $HOME/.bashrc

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM