我正在使用这个Dockerfile:
ARG PHP_VERSION=8.1
FROM php:${PHP_VERSION}-fpm-alpine AS coo-php
WORKDIR /srv/app
# Install Node, NVM and Yarn
RUN apk add --no-cache libstdc++ bash; \
echo 'source $HOME/.profile;' >> $HOME/.zshrc; \
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.1/install.sh | bash; \
echo 'export NVM_NODEJS_ORG_MIRROR=https://unofficial-builds.nodejs.org/download/release;' >> $HOME/.profile; \
echo 'nvm_get_arch() { nvm_echo "x64-musl"; }' >> $HOME/.profile; \
NVM_DIR="$HOME/.nvm"; source $HOME/.nvm/nvm.sh; source $HOME/.profile; \
nvm -v \
nvm install 18它运行正常,但是install.sh告诉我:
#0 3.304 => Close and reopen your terminal to start using nvm or run the following to use it now:
#0 3.304
#0 3.304 export NVM_DIR="$HOME/.nvm"
#0 3.304 [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
#0 3.304 [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
#0 3.338
#0 3.338 Node Version Manager (v0.35.1)如何实现export NVM_DIR="$HOME/.nvm"
发布于 2022-11-23 18:03:39
添加到下一行(在运行apk之后),ENV NVM_DIR "$HOME/.nvm",也需要bash来创建源文件
ARG PHP_VERSION=8.1
FROM php:${PHP_VERSION}-fpm-alpine AS coo-php
RUN rm /bin/sh && ln -s /bin/bash /bin/sh
WORKDIR /srv/app
ENV NVM_DIR /usr/local/nvm # or ~/.nvm
ENV NODE_VERSION 18
# Install nvm with node and npm
RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.1/install.sh | bash; \
&& . $NVM_DIR/nvm.sh \
&& nvm install $NODE_VERSION \
&& nvm alias default $NODE_VERSION \
&& nvm use defaulthttps://stackoverflow.com/questions/74551216
复制相似问题