在 Docker 中运行 Angular2 应用程序

2023-12-29

我正在尝试在 docker 中运行我的 ng2 应用程序。我有 Docker 文件:

FROM ubuntu:latest

RUN apt-get update

#Install curl & git
RUN apt-get -qq -y install curl
RUN apt-get install -yqq git


#Download and install nodejs-6
RUN curl -sL https://deb.nodesource.com/setup_6.x -o nodesource_setup.sh
RUN bash nodesource_setup.sh
RUN apt-get install -yqq nodejs
RUN apt-get install -yqq build-essential
RUN npm install -g angular-cli


#Clone the project
RUN git clone https://github.com/moravianlibrary/RecordManager2.git

WORKDIR /RecordManager2

#Checkout webapp_jobs_branch
RUN git checkout webapp_jobs_branch


#Go to the gui directory
WORKDIR /RecordManager2/cz.mzk.recordmanager.webapp.gui/gui

EXPOSE 4200

RUN npm install

CMD ["ng", "serve"]

构建并运行完成,没有错误:

docker build -t rm-gui .
docker run --name gui -dp 4200:4200 rm-gui

运行应用程序后,我可以看到应用程序确实在运行:

CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                    NAMES
caa4f1f820d6        rm-gui              "ng serve"          23 minutes ago      Up 23 minutes       0.0.0.0:4200->4200/tcp   gui

但是当我打开页面时http://localhost:4200/我看到一个错误This site can’t be reached。我究竟做错了什么?


in your package.json文件设置如下start命令

  "scripts": {
    "ng": "ng",
    "start": "ng serve -H 0.0.0.0",
    .....
  },

in your Dockerfile将最后一行替换为

CMD ["npm", "start"]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Docker 中运行 Angular2 应用程序 的相关文章

随机推荐

  • yii2 时区格式化程序中的问题

    php ini 中的时区是 UTC 系统时区为UTC yii 默认时区是 UTC 但在保存到数据库之前 我的日期时间属性会转换为我的时区 亚洲 加尔各答 例如 UTC 时间 12 00 小时 我的输入 17 30hrs 我在 db 中期望的
  • 如何以编程方式关闭 Android 手机?

    是否可以通过编程方式关闭移动设备 那是不使用 su 命令 这是可能的 但你需要一个RootedAndroid 设备Superuser使用权 除非您的应用程序已使用 Root 签名 否则您无法在没有 Root 的情况下执行此操作System
  • 模板专业化是否扩展或覆盖通用模板?

    template
  • 让 Android 应用程序监听共享链接

    当用户共享来自其他应用程序 如浏览器 的 URL 时 我希望我的 Android 应用程序显示为选项 我如何注册我的应用程序来做到这一点 我该如何对链接共享做出反应 多谢 Edit 我尝试过像这样使用 IntentFilter 但没有成功
  • 如何使用audio_service和just_audio在Flutter中查找当前歌曲时长

    当您设置MediaItem in 音频服务 https pub dev packages audio service你还不知道歌曲时长 因为只是音频 https pub dev packages just audio目前还没有任何更改可以告
  • jQuery 与 ExtJS 兼容吗?

    我相信 Ext js 使用了 jQuery 但我不确定 有谁知道是否与 jQuery 和 Ext js 完全兼容 Ext js 完全独立于 jQuery 因此不以任何方式依赖 jQuery 不知道 完全兼容性 是什么意思 但您可以在同一页面
  • Xcode UI 测试允许系统警报系列

    我有问题 如果我尝试允许系列系统警报 只工作一次 而下一个警报不 允许 我在谷歌上搜索了更多时间 并且知道了那个帖子 Xcode 7 UI 测试 如何在代码中消除一系列系统警报 https stackoverflow com questio
  • 我们可以在同一个 EAR 中跨 Web 应用程序共享 CDI @ApplicationScoped bean 实例吗?

    我有一个 JavaEE 应用程序 它有 2 个 Web 应用程序 我还有另一个库 Web 模块 其中包含 common bean 注释为 ApplicationScoped 我的问题是 我可以在两个 Web 应用程序之间共享 common
  • 浏览器如何判断是下载还是显示

    我有一个 Web 资源 它返回 json 内容Content Type application json 通常内容会直接显示在浏览器中 但有时不会 而是显示下载提示 我知道有一个标题Content Disposition inline at
  • jQuery:如何在单击缩略图时显示图像弹出窗口?

    在我的 aspx 页面中 我有一个缩略图 img 当用户单击该图像时 我希望显示一个弹出窗口 用较大 完整 版本的图像遮挡 UI 的其余部分 有没有任何插件可以做到这一点 有很多 jQuery 插件可用于此 Thickbox http co
  • Google Play 商店是否支持华为 HMS?

    我有一个带有常见谷歌广告和应用内支付功能的应用程序 它已被 Play 商店接受 现在我想让它同时支持GMS和HMS 根据适当服务的可用性 应用程序可以决定使用哪个平台 该应用程序内置了华为功能 在我自己的设备上测试时运行良好 然而 一旦华为
  • @Inject 通过 URL 将参数传递给 CDI @Named bean

    如果我无法将 ManagedProperty 注释与 Named 一起使用 因为 ManagedProperty 在 CDI 中不起作用 那么如何将 URL 中的参数传递给 Facelets 客户端 在我的代码中 我想通过 后退 和 前进
  • 使用 React.JS 导入 SVG 的最佳方法是什么

    我和我的团队正在构建一个 React 应用程序 我们希望导入 SVG 而不是作为字符串 这样我们就能够将其用作组件 由于我们使用 CRA 安装了该项目 因此 SVGR 已安装并处于 webpack 配置中 我们想知道是否有其他方法可以导入
  • utf-8 邮件 php 希腊字符

    我在我的网站中创建一个表单 我希望客户能够编写和发送希腊字符 但在邮件中我收到类似这样的内容 而不是希腊字符 我尝试使用以下代码将编码更改为 UTF 8 mail recipient subject UTF 8 B base64 encod
  • 有没有办法排除 docusaurus 中 docs 目录中的路径?

    我想从其中排除子文件夹docs 生成文档页面的目录 customDocsPath https docusaurus io docs en site config customdocspath string是一个相关选项 但它是一个字符串 是
  • Three.js - 相机的良好 z 距离,可实现盒子的全视图

    我使用 Three js 显示尺寸为 700x700 的场景 在此场景中 我生成了一个随机位置在 250 到 250 之间 对于 x y z 的粒子系统 因此盒子的大小为 500x500 为了计算相机的正确距离 为了适应盒子的完整视图 我尝
  • 如何在 EditItemTemplate 字段中绑定 GridView 中的 DropDownList?

    这是我在运行时绑定的 gridview 中的代码
  • 我应该如何在 Visual Studio 中使用调试/发布模式?

    我通常在工作机器上本地测试代码 然后将其移至开发环境 最后移至生产环境 对于这种情况 使用调试 发布模式的最佳方法是什么 我只需要关心我的机器中的调试模式吗 我应该将调试模式还是发布模式发布到开发中 我知道我可能应该使用发布模式发布到生产环
  • Django Rest Framework - 当用户不是对象所有者时拒绝用户推送

    目前 我设置了权限 如果用户不是对象所有者 则可以阻止他们进行 GET DELETE 和 PUT 操作Stock 但由于某种原因 当用户执行 PUSH 时 权限不起作用 即任何用户都可以 PUSHNote to a Stock即使他们不是S
  • 在 Docker 中运行 Angular2 应用程序

    我正在尝试在 docker 中运行我的 ng2 应用程序 我有 Docker 文件 FROM ubuntu latest RUN apt get update Install curl git RUN apt get qq y instal