Docker 容器上的 Vue.js 应用程序具有热重载功能

2024-01-01

在 docker 实例上运行 vue.js 应用程序时,出现明显的延迟和高 CPU 使用率。

这是我的码头设置

docker-compose.yml

version: '2'
services:

  app:
    build:
      context: ./
      dockerfile: docker/app.docker
    working_dir: /usr/src/app
    volumes:
    - ~/.composer-docker/cache:/root/.composer/cache:delegated
    - ./:/usr/src/app
    stdin_open: true
    tty: true
    environment:
    - HOST=0.0.0.0
    - CHOKIDAR_USEPOLLING=true
    ports:
    - 8080:8080

应用程序.docker

# base image
FROM node:8.10.0-alpine

# Create app directory
WORKDIR /usr/src/app

# Install app dependencies
COPY package*.json ./

RUN npm install

# Bundle app source
COPY . .

EXPOSE 8080

CMD [ "npm", "run", "serve"]

当我输入 docker-compose up -d 并且我的应用程序正在加载时,此设置工作正常http://localhost-8080.com/ http://localhost:8080/但热重载在 10 秒后发生,然后 15 秒后它不断增加,我的笔记本电脑 CPU 使用率达到 60% 并且仍在增加

我使用的是带有 16 GB RAM 的 Mac Book Pro,对于 docker,我启用了 4 个 CPU 和 6 GB RAM。

如何解决这个问题?


添加其中一项delegated or cached安装应用程序目录的卷的选项。我在使用缓存时经历了显着的性能提升,特别是:

volumes:
  - ~/.composer-docker/cache:/root/.composer/cache:delegated
  - ./:/usr/src/app:cached
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Docker 容器上的 Vue.js 应用程序具有热重载功能 的相关文章

随机推荐

  • MediaTek 处理器上的双精度值计算错误

    我发现我在市场上发布的一款应用程序在某些手机上产生了奇怪的结果 经过调查发现 一个计算两个地理点之间距离的函数存在问题 有时它会返回完全错误的值 此问题仅在具有以下功能的设备上重现联发科MT6589 http www mediatek co
  • localstorage - 保存数组[重复]

    这个问题在这里已经有答案了 我有本地存储 可以保存输入并将它们推送到列表中 现在我想将列表保存在本地存储中 因为当我重新加载列表时 列表会重置var fav new Array 在此开头定义jsFiddle http jsfiddle ne
  • 如何在 java 中解组 ruby​​ 对象?

    我有一个对象 我想用java获取它的内容 唯一的问题是目前在 ruby 中 irb main 050 0 gt blah gt BAh7ByIeYXV0aGVudGljYXRpb25fc3RyYXRlZ2llczAiCXVzZXJpBg 2
  • AVAudioEngine 在 iOS14 中获取 inputNode 属性崩溃

    这是一个启动audioEngine的函数 void startAudioEngine NSError error nil if self audioEngine isRunning self audioEngine AVAudioEngin
  • Python 装饰器有哪些常见用途? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 虽然我喜欢将自己视为一名相当有能力的 Python 程序员 但我从未理解过的语言的一个方面是装饰器 我知道它们是什么 表面上 我读过 St
  • 如何使用 Sublime Text 3 配置 MinGW?

    我最近安装了 MinGW 并且一直试图让它与 Sublime Text 3 一起使用 以便在编译脚本时打开 cmd 但是没有任何效果 当我去工具 gt 构建系统 gt 新构建系统并保存此脚本 我不断收到错误 C 不被识别为内部或外部命令 可
  • C 中数组索引减去字符意味着什么?

    include
  • 将多个控件放入更新面板的正确方法是什么?

    我有一份注册表单 其中包含 3 到 4 个下拉控件和 2 个日期选择器 现在当选择下拉控件值时 触发 selectedindex 更改 那么我不希望我的页面回发 我已经使用更新面板来停止这种帖子行为 如下所示
  • Spray.io:何时(不)使用非阻塞路由处理?

    如果我们正在考虑生产级 REST API 我们是否应该尽可能使用非阻塞 例如 def insertDbAsync rows RowList Future Unit val route path database insertRowList
  • 在并发环境中处理 max(ID)

    我是 Web 应用程序编程和使用 SQL Server 等 RDBMS 处理并发的新手 我正在使用 SQL Server 2005 Express 版 我正在生成员工代码 其中最后四位数字来自此查询 SELECT max ID FROM e
  • Node.js - Mongoose - 检查集合是否存在

    我需要使用 mongoose 插入一些数据 但集合的名称是由用户在插入时提供的 所以我首先必须检查集合是否存在 我知道如何检查集合是否存在的方法是查询system namespaces收藏 我可以看到 3 种可能的方法来做到这一点 寻找查询
  • 实体框架代码首先创建“鉴别器”列

    我正在使用 EF CF 方法创建一个带有 MySQL 的网站 由于某种原因 EF 在我的 Post 表中创建了一个名为 Discriminator 的列 并包含 VARCHAR Post 为什么要创建这个专栏 我可以做些什么来避免它被创建吗
  • 提交按钮变灰

    我的表单上有一个非常重要的提交按钮 我不希望用户多次点击它 有没有办法让它不可点击或在点击后变灰 也许是点击事件 我的简单代码如下
  • 如何在 SQL 中对连续值进行分组

    我在 SQL Server 2014 中有一个表 其中的示例数据如下 WK NUM NET SPRD LCL 10 0 11 1500 12 3600 13 3800 14 4000 我正在尝试在工作中编写一个奖金结构 我需要在 WK NU
  • 如何在 IDLE 中删除多行制表符缩进?

    如果您想在 Python IDLE 中缩进多行 只需标记这些行并按 Tab 键即可 但是 如果您想删除多行中的缩进怎么办 Shift Tab 在 IDLE 中不起作用 如果您使用 IDLE 则可以使用Ctrl 缩进和Ctrl 取消缩进
  • 在 Perl 中,如何检查给定函数是从哪个模块导入的?

    我有一个调用该函数的代码 但我不知道这个函数属于哪个模块 我需要它来修改这个功能 我怎样才能检查它 The Devel Peek http search cpan org perldoc Devel Peek模块可以非常方便地获取有关变量的
  • 我可以使用 SQL 将存储为 CSV(逗号分隔值)的表列的内容拆分为新表中的各个行吗?

    我看到有几个相关的问题和答案 但不完全是我需要的 所以我会问一个新问题 我有一个包含数千行商店库存数据的 CSV 文件 我想将其导入 MS SQL Server 数据库并使用 SQL 来处理它们 导入 CSV 文件后 SQL 表将具有包含
  • 带空格的 Shell 变量,引用单个命令行选项

    Autoconf 脚本在处 理带有空格的文件名或路径名时遇到问题 例如 configure CPPFLAGS I path with space 结果 config log configure 3012 gcc I path with sp
  • 从字符串中删除最后三个字符

    我想从字符串中删除最后三个字符 string myString abcdxxx 请注意 该字符串是动态数据 从字符串中读取最后 3 个字符 最初提出的问题 您可以使用字符串 子字符串 http msdn microsoft com en u
  • Docker 容器上的 Vue.js 应用程序具有热重载功能

    在 docker 实例上运行 vue js 应用程序时 出现明显的延迟和高 CPU 使用率 这是我的码头设置 docker compose yml version 2 services app build context dockerfil