angular - Angular 9 和 docker 为什么 docker 只返回 doc 文件夹而不是构建应用程序?
问题描述
我正在尝试将我的 Angular 9 应用程序的图像上传到Docker hub
. 我的 Visual Studio 代码中已经安装了 docker 扩展,我将它连接到我的用户名并添加了我的帐户密码。
然后,我运行以下命令来全局安装 docker:
npm install -g docker
在我的项目的根路径中,我创建Dockerfile
了以下脚本:
# Stage 1
FROM node:latest as node
WORKDIR /app
COPY . .
RUN npm install
RUN npm run build --prod
# Stage 2
FROM nginx:alpine
COPY --from=node /app/dist/myproject /usr/share/nginx/html
然后我尝试了:
FROM 13.13.0-alpine3.10 as build-step
WORKDIR /app
COPY package*.json /app/
RUN npm install
COPY . /app/
RUN npm run build
FROM nginx:1.17.10-alpine as prod-step
COPY --from=build-step /app/dist/myproject /usr/share/nginx/html
# COPY /dist/myproject /usr/share/nginx/html
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]
然后我尝试使用以下方法构建我的应用程序:
docker build --rm -f "Dockerfile" -t myproject:latest "."
而且我得到了以下响应,而不是构建应用程序:
将文件树保存到 doc-filelist.js
将 JS 复制到 doc-script.js
将 CSS 编译为 doc-style.css
并且doc
已经创建了一个文件夹。但没有做其他任何事情。
我在堆栈溢出上尝试了这个解决方案docker.js
,但我不认为这是我想要构建一个 docker 映像并上传到 docker hub 并从那里运行它的解决方案。
解决方案
您没有使用该 npm 命令安装所需的 Docker 引擎。这是安装 Docker 引擎的方式:https ://docs.docker.com/engine/install 。之后,您可以尝试构建您的 Dockerfile。
此外,您的图像名称似乎错误:FROM 13.13.0-alpine3.10
. 看起来您正在尝试在这里引用节点图像?应该是:FROM node:13.13.0-alpine3.10
?
推荐阅读
- sql - SQL Server 月末
- sql - 产品单价频繁变化时创建库存数据库
- string - 在 url 中使用字符串查询但指定字段集的自动填充复选框
- mysql - 从其他表更新 db avg 值中的字段
- vue.js - 如何让我的 v-show 在 Vue JS 中显示组件
- java - 无法弄清楚为什么我的选择排序作为 java 方法的实现不能按预期工作
- jquery - 使用 JQuery 向表单添加元素会导致提交时出现“无法解密防伪令牌”错误
- html - 仅设置图像高度属性在 HTML 中不起作用,但仅设置宽度属性有效
- docker - 无法在 Bitnami Dokuwiki 上创建用户
- javascript - 如何编辑javascript计时器显示样式