为什么图像未创建?

问题描述 投票:0回答:1

我有那个 Dockerfile

FROM ubuntu:22.04

WORKDIR /root/app/frontend

COPY . .

ENV APP_NAME app.com
ENV CONTAINER_PORT 80
ENV NODE_VERSION v20.10

EXPOSE $CONTAINER_PORT

# utils
RUN apt-get update \
    && apt-get install -y systemd \
    && apt-get install -y curl \
    && apt-get install -y sudo \
    && apt-get install -y git \
    && apt-get install -y vim \
    && apt-get install -y nginx

# nvm settings
RUN git clone https://github.com/nvm-sh/nvm.git /root/.nvm \
    && chmod -R 777 /root/.nvm/ \ 
    && bash /root/.nvm/install.sh \
    && bash -i -c 'nvm ls-remote' \ 
    && bash -i -c 'nvm install $NODE_VERSION' \
    && bash -i -c 'nvm use $NODE_VERSION' 

# nginx settings
RUN sudo rm /etc/nginx/sites-available/default \
    && sudo rm /etc/nginx/sites-enabled/default \
    && bash ./.nginx/nginx.sh \
    && ln -s /etc/nginx/sites-available/$APP_NAME /etc/nginx/sites-enabled/$APP_NAME \
    && gpasswd -a www-data root \
    && chmod g+x /root && chmod g+x /root/app && chmod g+x /root/app/frontend

RUN chmod -R 777 /root/.npm/ 
RUN npm i

CMD ["nginx", "-g", "daemon off;"]

我尝试使用

docker image build --file Dockerfile --tag front ./

创建图像

有这个问题

39 | >>> 运行 npm i

错误:无法解决:进程“/bin/sh -c npm i”未成功完成:退出代码:127

我尝试替换这一行

RUN bash -i -c 'npm i'

而且它从未完成

请帮助我

docker npm dockerfile nvm
1个回答
0
投票

这对我来说是解决方案:

运行 ln -sf $USER_DIR/.nvm/versions/node/v20.10.0/bin/nodejs /bin/nodejs
&& ln -sf $USER_DIR/.nvm/versions/node/v20.10.0/bin/node /bin/node
&& ln -sf $USER_DIR/.nvm/versions/node/v20.10.0/bin/npm /bin/npm

© www.soinside.com 2019 - 2024. All rights reserved.