配置 devcontainer 来运行电子应用程序?

Kev*_*aza 9 selenium-chromedriver selenium-webdriver dockerfile visual-studio-code vscode-devcontainer

问题

每次我使用命令在终端中执行项目时,npm start都会收到以下错误消息:

>ProjectName@1.0.0 start /workspaces/ProjectName
>electron .

/workspaces/ProjectName/node_modules/electron/dist/electron: error while loading shared libraries: libxshfence.so.1: cannot open shared object file: No such file or directory
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! ProjectName@1.0.0 start:`electron .`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the ProjectName@1.0.0 start script
npm ERR! This is probably not a problem with npm. There is likely additional logginh output above.

npm ERR! A complete log of this run can be found in:
npm ERR!   /home/node/.npm/_logs/2021-05-03T03_50_33_776Z-debug.log
Run Code Online (Sandbox Code Playgroud)

访问 -> 2021-05-03T03_50_33_776Z-debug.log

我的 Dockerfile

ARG VARIANT="14-buster"
FROM mcr.microsoft.com/vscode/devcontainers/javascript-node:0-${VARIANT}

RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \
&& apt-get -y install --no-install-recommends xorg openbox libnss3 libasound2 libatk-adaptor libgtk-3-0
Run Code Online (Sandbox Code Playgroud)

我的 devcontainer.json

{
"name": "Node.js",
"build": {
    "dockerfile": "Dockerfile",
    "args": { "VARIANT": "14" }
},

"settings": { 
    "terminal.integrated.shell.linux": "/bin/bash"
},

"extensions": [
    "dbaeumer.vscode-eslint",
],

"remoteUser": "node"
Run Code Online (Sandbox Code Playgroud)

}

注意:我已经尝试将remoteUser设置为root,但我不知道如何使用devcontainer将chrome置于--no-sandbox模式。