我创建了一个分支,托管着一个基于Electron应用程序的聊天客户端: https://github.com/Serkan-devel/BetterDiscordApp-docker。
我的目标是创建一个具有GUI界面的docker容器,类似于https://blog.jessfraz.com/post/docker-containers-on-the-desktop/ 中描述的方式。
我创建的dockerfile如下:
FROM node:slim
COPY . /usr/scr/app
#RUN rm bdstart.sh
RUN npm install --save-dev electron
RUN npm install
#ENV FRESHINSTALL=true
CMD ["/usr/scr/app/start.sh"]
start.sh文件如下:
./node_modules/.bin/electron ./src
构建Docker镜像并使用以下命令执行:
docker run -it -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=unix$DISPLAY --device /dev/snd dixord
我遇到了错误代码:
standard_init_linux.go:175: exec user process caused "exec format error"
尽管我已经将文件设置为可执行并使用了正确的amd64体系结构,但还是无法运行。
有人想出了如何在docker中本地化地运行electron GUI吗?
start.sh
文件,还是你只是复制并粘贴了有问题的那一行代码?因为也许你忘记添加#!/bin/sh
这个在 shell 脚本中的第一行。 - VladoDemcak/node_modules/electron/dist/electron: error while loading shared libraries: libgtk-x11-2.0.so.0: cannot open shared object file: No such file or directory
的错误信息。 - Patently Paul