docker-compose:尝试使用 oauth 身份验证安装 MDBoostrap Pro 时出错
docker-compose: error while trying to install MDBoostrap Pro with oauth authentication
我正在尝试使用通过 npm + oauth2 身份验证安装的 MDBootstrap Pro 部署和开发应用程序。
基本上,进入 dir 项目,为了安装它,你必须 运行 以下命令:
npm install git+https://oauth2:YOUR_TOKEN@git.mdbootstrap.com/mdb/angular/ng-uikit-pro-standard.git --save
它工作正常,直到您必须将项目放入容器中。
这是我的 Dockerfile:
FROM node:13.10-alpine AS builder
COPY ./ ./portal/
WORKDIR /portal
RUN npm i
RUN $(npm bin)/ng build --prod
FROM httpd:2.4
COPY --from=builder /portal/dist/InternationalItaly/ /usr/local/apache2/htdocs/
当构建到达第 RUN npm i
行时,它崩溃了,原因如下:
npm ERR! enoent Error while executing:
npm ERR! enoent undefined ls-remote -h -t https://oauth2:TOUR_TOKEN@git.mdbootstrap.com/mdb/angular/ng-uikit-pro-standard.git
我在npm i
之前试过安装,但是问题好像没有解决。我不想将它作为一个巨大的资产导入(基本上,将 repo 克隆到我项目的资产中),我想将它作为 npm 依赖项来实现。
我认为你必须安装 git
试试这个:
FROM node:13.10-alpine AS builder
RUN apk add --no-cache git
COPY ./ ./portal/
WORKDIR /portal
RUN npm i
RUN $(npm bin)/ng build --prod
FROM httpd:2.4
COPY --from=builder /portal/dist/InternationalItaly/ /usr/local/apache2/htdocs/
个人比较喜欢git+ssh://...
一个例子:
ARG KNOWN_HOSTS
ARG ID_RSA
RUN apk add --no-cache git openssh
RUN mkdir ~/.ssh && echo $KNOWN_HOSTS >> ~/.ssh/known_hosts && echo -en $ID_RSA >> ~/.ssh/id_rsa && chmod 600 ~/.ssh/id_rsa
RUN mv ssh_config ~/.ssh/ssh_config
希望对您有所帮助
我正在尝试使用通过 npm + oauth2 身份验证安装的 MDBootstrap Pro 部署和开发应用程序。 基本上,进入 dir 项目,为了安装它,你必须 运行 以下命令:
npm install git+https://oauth2:YOUR_TOKEN@git.mdbootstrap.com/mdb/angular/ng-uikit-pro-standard.git --save
它工作正常,直到您必须将项目放入容器中。
这是我的 Dockerfile:
FROM node:13.10-alpine AS builder
COPY ./ ./portal/
WORKDIR /portal
RUN npm i
RUN $(npm bin)/ng build --prod
FROM httpd:2.4
COPY --from=builder /portal/dist/InternationalItaly/ /usr/local/apache2/htdocs/
当构建到达第 RUN npm i
行时,它崩溃了,原因如下:
npm ERR! enoent Error while executing:
npm ERR! enoent undefined ls-remote -h -t https://oauth2:TOUR_TOKEN@git.mdbootstrap.com/mdb/angular/ng-uikit-pro-standard.git
我在npm i
之前试过安装,但是问题好像没有解决。我不想将它作为一个巨大的资产导入(基本上,将 repo 克隆到我项目的资产中),我想将它作为 npm 依赖项来实现。
我认为你必须安装 git
试试这个:
FROM node:13.10-alpine AS builder
RUN apk add --no-cache git
COPY ./ ./portal/
WORKDIR /portal
RUN npm i
RUN $(npm bin)/ng build --prod
FROM httpd:2.4
COPY --from=builder /portal/dist/InternationalItaly/ /usr/local/apache2/htdocs/
个人比较喜欢git+ssh://...
一个例子:
ARG KNOWN_HOSTS
ARG ID_RSA
RUN apk add --no-cache git openssh
RUN mkdir ~/.ssh && echo $KNOWN_HOSTS >> ~/.ssh/known_hosts && echo -en $ID_RSA >> ~/.ssh/id_rsa && chmod 600 ~/.ssh/id_rsa
RUN mv ssh_config ~/.ssh/ssh_config
希望对您有所帮助