Docker 部署 Angular 项目有两种方法,一种是服务端渲染,这个官方文档已有说明,另一种就是使用 node 镜像编译后放入 web 服务器。由于在 node 环境,所以使用 express 最为便捷了。

创建 server.js

const express = require('express');

const app = express();
const config = {
  root: __dirname + '/dist',
  port: process.env.PORT || 4200
};

//静态资源
app.use('/', express.static(config.root));

//所有路由都转到index.html
app.all('*', function (req, res) {
  res.sendfile(config.root + '/index.html');
});
app.listen(config.port, () => {
  console.log("running……");
})

创建 Dockerfile

FROM node:13.3.0-alpine3.10

ENV PORT=4200   NODE_ENV=production

# 安装express和angular/cli
RUN npm install express@4.17.1 -g   && npm install -g @angular/cli
# 创建app目录
RUN mkdir -p /app
# 复制代码到 App 目录
COPY . /app
WORKDIR /app

# 安装依赖,构建程序,这里由于我需要反向代理到子目录,所以添加了base-href参数
RUN npm install && ng build --base-href /manage/ --prod

EXPOSE ${PORT}

ENTRYPOINT ["node", "/app/server.js"]

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

标签:
Docker部署Angular,Docker,Angular部署

免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
金钱帮资源网 Copyright www.kbjia.com

评论“使用Docker部署Angular项目的方法步骤”

暂无“使用Docker部署Angular项目的方法步骤”评论...

RTX 5090要首发 性能要翻倍!三星展示GDDR7显存

三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。

首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。

据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。