在 macOS 上通过 XQuartz 对 Docker 内 GUI 程序进行 X11 转发
在 macOS 上通过 XQuartz 对 Docker 内 GUI 程序进行 X11 转发
XQuartz 安装与配置
在 macOS 上,默认情况下没有内置 X11 服务器。需要安装 XQuartz,它是 macOS 上的 X11 服务器实现
1 |
|
安装完后打开 XQuartz,进入 Settings > Security
, 勾选 Allow connections from network clients,然后重启 XQuartz,查看 XQuartz 的进程号以及占用的端口
1 |
|
输出格式应为
1 |
|
进行 X11 转发
利用 xhost
指令允许来自本机的连接
1 |
|
直接使用 xhost
指令可以打印允许的网络连接,例如
1 |
|
完成后可以使用以下指令进行测试
1 |
|
- 此处
-e DISPLAY=docker.for.mac.host.internal:0
的作用为添加DISPLAY
这一环境变量,数字 0 根据 XQuartz 监听端口的不同会有所改变,一般来说默认的端口是 6000,倘若实际使用过程中是 6001,只需要把 0 改为 1,其他以此类推即可。其中docker.for.mac.host.internal
也可以替换成host.docker.internal
或者本机地址。
Reference
在 macOS 上通过 XQuartz 对 Docker 内 GUI 程序进行 X11 转发
https://blog.iks-ran.com/2025/01/09/x11-forwarding-for-docker-on-macos/