Windows docker 容器上的 Chrome 无法工作

2024-03-29

我正在尝试在 Docker 容器上运行 Google Chrome。 这个docker容器是基于microsoft/windowsservercore:ltsc2016。我想使用 docker 容器构建 AngularCLI 应用程序。因此,我需要在 Google Chrome 中运行我的测试(带有: – 无头标志)。

使用 Chrome 运行测试对我来说是一个新功能,因为我的 Angular-Apps 不是基于 Angular CLI 结构,并且测试是使用 PhantomJS 执行的。

我已经更新了整个 Angular 项目以适应 AngularCLI 结构,因为我希望它们基于标准 Angular 方式。所以我尝试使用 Chrome 而不是 PhantomJS。

此外,我正在使用 Chocolatey 来安装软件包。

这是我的缩小版 dockerfile:

FROM microsoft/windowsservercore:ltsc2016

RUN choco install -y googlechrome && \
    choco install -y nodejs --version 8.11.3

# npm konfiguration um den dvelop-npm ProGet feed nutzen zu können
RUN npm install -g @angular/cli

我可以使用完整的 dockerfile 构建 AngularApp,但我的测试不起作用。启动Chrome时出现错误,提示在chrome.dll中找不到Chrome的某个模块。

完整错误:

Project name: dapi-provider
22 10 2018 11:16:09.393:INFO [karma]: Karma v3.0.0 server started at http://0.0.0.0:9876/
22 10 2018 11:16:09.396:INFO [launcher]: Launching browser ChromeHeadlessNoSandbox with unlimited concurrency
22 10 2018 11:16:09.410:INFO [launcher]: Starting browser Chrome
22 10 2018 11:16:10.238:ERROR [launcher]: Cannot start Chrome
        [1022/111609.595:ERROR:main_dll_loader_win.cc(134)] Failed to load Chrome DLL from C:\Program Files (x86)\Google\Chrome\Application\70.0.3538.67\chrome.dll: The specified module could not be found. (0x7E)

我知道这是一个迟到的回应 - 但几周前我自己也遇到了同样的情况。

事实证明 - 问题出在字体上。是的,去算一下哈哈。

ServerCore 仅包含一种字体,而不是 google chrome 渲染 UI 所需的字体。

我在这里为您整理了所需的字体,并展示了如何在 Windows 容器中提取和安装:https://github.com/prom3theu5/ServerCoreFonts https://github.com/prom3theu5/ServerCoreFonts

所需字体:

  • Arial
  • Consolas
  • 英语字体格式一种
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Windows docker 容器上的 Chrome 无法工作 的相关文章

  • 只响应第一个 WM_KEYDOWN 通知?

    Win32 应用程序如何仅响应第一个 WM KEYDOWN 通知 MSDN 文档声称第 30 位 指定先前的按键状态 如果在发送消息之前按键处于按下状态 则该值为 1 如果按键处于按下状态 则该值为 0 但在我的 WndProc 中 第 3
  • “sed” 在文件中插入反斜杠

    Tool Windows 版 Git Bash Problem 尝试在目录中每个文件的顶部插入文本 connectcentral Code for f in DIR sql do sed i 1i connect central f don
  • Chrome消息传递错误:尝试使用断开连接的端口对象

    我的 Chrome 扩展使用长期存在的 端口 对象在 内容脚本 和 弹出 页面之间传递消息 弹出窗口 能够向 内容脚本 事件监听器发送消息 但是 内容脚本 中的 端口 对象无法将消息发送到 弹出 页面 var port chrome ext
  • 在本地主机(Chrome 和 FF)上,过期时间少于 1 年时未设置 cookie

    我在本地主机上遇到问题 并且在Chrome and Firefox not Edge 这段代码可以正常工作 并且会设置 cookie HttpPost public ActionResult Change string val var co
  • 如何正确离开临界区?

    我有以下 C 代码 我在其中使用临界区对象 https msdn microsoft com en us library windows desktop ms682530 v vs 85 aspx EnterCriticalSection
  • 终止进程树(C for Windows)

    以前曾有人问过这个问题 但我在代码中找不到明确的答案 我打开一个进程 ProcessA PID 为 1234 此进程打开一个子进程 ProcessAB PID 5678 完成后 我终止了 ProcessA 但 ProcessAB 仍然存在
  • 如何使用 TensorFlow 设置 Udacity 深度学习课程的学习环境 (Windows)

    相信很多对深度学习感兴趣的人都听说过这门课程 https www udacity com course deep learning ud730 https www udacity com course deep learning ud730
  • Kubernetes:无法创建存储库

    我正在跟进Kubernetes 入门指南 http kubernetes io docs hellonode 一切都很顺利 直到我跑步 gcloud docker push gcr io
  • 有没有办法获取正在运行或新打开的资源管理器窗口的 IExplorerBrowser 接口以供后续 BrowseToXXX 调用?

    这么问是因为在上一个问题 https stackoverflow com questions 6220899 answer 6221898我是指向 IExplorerBrowser 的指针 但是它创建了一个子窗口 而我想模拟资源管理器的 查
  • 强制节点在 Windows 上使用 git bash

    我有一个 package json 文件 如下所示 name APP version 3 0 0 private true scripts start node app js test test dbLoad env db test tes
  • Python ctypes:SetWindowsHookEx 回调函数从未被调用

    我正在尝试用 Python 编写一个程序 该程序可以识别何时显示警报框 对话框 它正在处理多个监视器 我希望它在任务栏图标闪烁 弹出错误 通知等时在辅助监视器上显示可视化效果 据我所知 检测这些事件的方法是使用消息挂钩 如下所述 http
  • 由于权限被拒绝,无法绑定到某些端口

    在过去 3 个月左右的时间里 我遇到了随机错误 无法绑定身份服务器在本地开发工作站上运行的特定端口 起初我以为是我的机器坏了 所以我重置了所有东西 这在两个月内解决了这个问题 现在它又回来了 与此同时 其他开发人员也看到了同样的问题 我们所
  • 如何通过 docker-php-ext-install 安装 php 扩展?

    为了解决问题 https stackoverflow com questions 37526509 how to install pdo driver in php docker image 我现在尝试通过安装 mysql pdo dock
  • Google Chrome 的互联网历史记录脚本

    我并不是在寻找 最佳 或最有效的脚本来执行此操作 但我想知道是否存在一个脚本可以从 Google Chrome 中提取一天的互联网历史记录并将其记录到 txt 文件中 我更喜欢用 Python 或 MATLAB 编写 如果你们有不同的方法
  • Docker 未知标志 --mount

    我想使用 mount 将目录从主机挂载到容器flag over volume但我得到 这仅在使用安装标志时才会出现 而不是在使用卷时出现 Command docker run d it name devtest mount type bin
  • 关于:链接(Markdown 页面)上的blank#blocked

    在 Markdown 页面中 Microsoft TFS Wiki 我尝试创建 A 标签file link a href file txt a 点击 Chrome 后 我得到了 about blank blocked 这不是 Chrome
  • Docker:内存文件系统

    我有一个 docker 容器 它对磁盘进行大量读 写操作 我想测试当我的整个 docker 文件系统都在内存中时会发生什么 我在这里看到一些答案说这不会是真正的性能改进 但这是为了测试 我想测试的理想解决方案是共享每个图像的公共部分 并在需
  • 将 SSL 与 MAMP PRO 4 结合使用

    由于我已更新到 chrome 63 我在 localhost 中的网站被重定向到 https 因此我决定将 SSL 与 MAMP PRO 一起使用 但我无法使其工作 chrome 说您的连接不是私有的 在 MAMP 的 SSL 面板中 我生
  • Android 上页面留在后台时会触发“beforeunload”事件

    我正在尝试制作一个在导航时弹出的简单加载微调器 它在导航离开时使用 beforeunload 事件显示 并在完成后使用 load 事件再次隐藏自身 问题是 当我将页面留在手机后台时 例如几个小时后 beforeunload 事件触发并显示微
  • 设置 eclipse 进行 Windows 驱动程序开发

    我正在尝试使用 WDK 7 1 0 编写用户模式 Windows XP Vista 和 7 虚拟打印机驱动程序 我打算使用 eclipse IDE 进行开发 所以想知道是否可以进行相同的设置 我希望做以下事情 1 Eclipse 能够识别

随机推荐

  • 错误!代码 EPERM

    我正在使用 Node v6 11 2 npm v5 3 0 和 Angular cli v1 2 7 我的大部分 npm 安装突然收到以下错误消息 以前没见过 mmeppiel MC LT MMEPPIEL MINGW64 Desktop
  • 我可以在调用 Flask app.run 之后让 Python 代码继续执行吗?

    尽管过去 30 年来我一直在使用其他语言进行编程 但我才刚刚开始使用 Python 我想让我的第一个应用程序保持简单 所以我从一个托管在 Raspberry Pi 上的小型家庭自动化项目开始 我的代码工作正常 控制阀门 读取流量传感器并在显
  • 使用 Django 和 Twilio 通过短信进行一次性用户身份验证

    我正在 Django 中为我正在创建的移动应用程序编写后端 我需要在用户第一次通过短信打开移动应用程序时对其进行身份验证 以验证其是否为真人 需要发生的事情如下 用户在应用程序中输入电话号码 服务器然后向用户发送带有验证码的短信 然后用户在
  • 如何通过 VSCode 始终在新窗口中打开文件?

    Using MacOS Mojave VSCode 1 28 2 我在文本编辑中使用 VSCode 如 js txt csv 当我双击并在 Finder 或桌面中打开文件 或 在 VSCode 中打开 时 如果我打开另一个工作区 它会在与我
  • 我可以为 C# 中的匿名类指定一个有意义的名称吗?

    我们都知道 当我们创建这样的匿名类时 var Employee new ID 5 Name Prashant 在运行时它将是以下类型 lt gt f AnonymousType0
  • gcc 优化标志 -O3 使代码比 -O2 慢

    我找到这个话题为什么处理排序数组比处理未排序数组更快 https stackoverflow com questions 11227809 why is processing a sorted array faster than an un
  • 如何发送 AJAX POST 请求并播放响应中的音频?

    我正在构建一个应用程序 用户可以单击按钮 然后它将数据发送到服务器 然后 服务器根据请求 很可能是 POST 中的数据计算音频 并将 WAV 文件返回到浏览器 我已经构建了接受 post 请求并使用 wav 文件响应的部分 但我不知道如何在
  • 将 QR 码调配到设备所有者模式失败

    我有一台运行 Android 7 1 1 的设备 我正在构建示例 DPC 应用程序以准备制作 COSU kiosk 应用程序 但我在配置设置中不断遇到错误 我采取的步骤 将设备恢复出厂设置 成功扫描二维码配置屏幕上的代码 应用程序下载成功并
  • Angular Http - toPromise 或订阅

    我观看了一些有关 Angular 的课程 发现有不同的方法来管理来自 Http 请求的数据 使用可观察量 map subscribe 使用承诺 toPromise then catch 我用过toPromise 在我的应用程序中 我发现它类
  • 如何添加不同的背景颜色到交替行到列表框项目 Windows Phone 8

    我是 Windows Phone 开发新手 我在列表框中显示数据 对于列表框中的所有行 背景颜色都是相同的 但我想为列表框项目的交替行添加两种不同的颜色 下面是列表视图的代码
  • 如何将图片添加到 javaFX 2.0 netbeans 项目

    您好 感谢您抽出宝贵的时间 我是 Netbeans 新手 我正在使用 Netbeans 7 1 RC1 版本 我遇到的问题是我似乎无法将图像添加到项目中 我正在 JavaFX 2 0 中设计一个 Web 应用程序 需要一张 jpg 图片作为
  • 对包含字符串和数字的数据帧索引进行排序

    我有一个数据框 其中索引值是由下划线分隔的字符串和数字的混合 sub int1 ICA int2 我想首先使用 int1 对列索引进行排序 然后使用 int2 对列索引进行排序 预期输出为 sub 1 ICA 1 sub 1 ICA 2 s
  • Spring 4 中有多个@ComponentScan?

    我正在使用 Spring 4 16 和 Java Annotations 我想做一些类似的事情 Configuration ComponentScan basePackages com example business includeFil
  • 自 iOS 5.1 以来,自定义 MPVolumeView 拇指图像未垂直居中

    我正在构建一个需要 MPVolumeView 来控制音量的应用程序 它在 iOS 5 1 之前工作得很好 但自 5 1 更新以来 拇指图像不再垂直居中 我尝试了一些方法 例如更改想象尺寸 调整视图 和滑块 的大小 但似乎没有任何效果 拇指不
  • Flutter 未检测到 Android SDK

    我一直在尝试让 flutter 来检测 Android SDK flutter doctor returns PS I Projects Flutter fluttertest flutterproject gt flutter docto
  • 使用类型化视图时如何在 ActionFilterAttribute 中设置模型数据

    我使用强类型视图 其中所有 ViewModel 都继承类 BaseViewModel 在装饰所有控制器的 ActionFilter 中 我想使用模型 现在我只能这样访问它 public override void OnActionExecu
  • Android 中 LinearLayout 的捏合缩放

    我需要缩放包含图像 文本视图等的整个布局 我发现缩放功能仅适用于图像视图 创建自定义Layout调用的类ZoomeLinearLayout ZoomLinearLayout java public class ZoomLinearLayou
  • 在 VSCode 中打开 2 个文件夹?

    我们真的不能在 VS Code 上同时打开两个文件夹吗 根据我的观察 假设我有两个文件夹 即 f1 和 f2 当我打开 f1 然后如果我想打开 f2 它会自动关闭文件夹 f1 那么 这个问题可以解决吗 或者是 VS 代码中的默认值 None
  • Delphi 6 IDE 和应用程序可以在 Windows 7 64 位上运行吗?

    我有一个使用 Delphi 6 开发的商业应用程序 我一直在 windows xp 32 位下开发 但即将获得一台使用 Windows 7 64 位的新开发机器 Delphi 6 能否在新环境中安装和工作 开发的应用程序还使用 BDE 在
  • Windows docker 容器上的 Chrome 无法工作

    我正在尝试在 Docker 容器上运行 Google Chrome 这个docker容器是基于microsoft windowsservercore ltsc2016 我想使用 docker 容器构建 AngularCLI 应用程序 因此