镜像版本ARCS

使用容器启动arcs通过X协议显示

X是协议,就像HTTP协议,IP协议一样。一个基于X的应用程序需要运行并显示内容时他就联接到X服务器,开始用X协议和服务器交谈。比如一个X应用程序要在屏幕 上输出一个圆,X应用程序只负责告诉X服务器在屏幕的什么地方用什么颜色画一个多大的圆,而具体的"画"的动作,比如这个圆如何生成,用什么显卡的驱动程 序去指挥显卡完成等等工作是由X服务器来完成的。X服务器还负责捕捉键盘和鼠标的动作,假设X服务器捕捉到鼠标的左键被按下了,他就告诉X应用程序:亲爱 的应用程序先生,我发现鼠标被按下了,您有什么指示吗?协议是需要具体的软件来实现的

有了协议就需要具体的软件来实现这个协议。Xfree86就是这样一个去根据法规实现协议的"交警"。实现X协议的软件也并不只有 XFree86,XFree86只是实现X协议的一个免费X服务器软件。商业上常用MOTIF,现在还有XORG,还有很多很小的由爱好者写的小的X服务 器软件。甚至可以在WINDOWS上有X服务器运行,这样你可以在linux系统上运行一个X应用程序然后在另一台windows系统上显示。

windows的wsl也可以安装桌面环境之后通过xserver映射出来哦,可以自行探索

准备

想要配置arcs软件通过容器方式启动,然后再通过x协议传输到x-server中需要安装x-server

windows: 下载地址

mac: 下载地址

安装完成后启动,默认x-server应该会监听本地的127.0.0.1

选择OneWindow会新建一个窗口提供给客户端输入的视频内容

安装docker,可以按照docker官方文档安装 Docker官方

1. 启动X-Server(XLaunch)

启动XLaunch

img_03

2. 拉取镜像

镜像版本介绍

镜像版本由 arcs 软件及 commit_sha 组成,建议查看软件发布网页中的文件名称,之后组成镜像 url 从而执行 docker pull

例如软件包名称为:arcs_update-0.19.4+42bc716.run 那么镜像 tag 就应该为 ccr.ccs.tencentyun.com/aubo/arcs:0.19.4-42bc716

故可以执行拉取镜像

docker pull ccr.ccs.tencentyun.com/aubo/arcs:0.19.4-42bc716

3. 启动容器环境

因为镜像中会启动systemd进程所以需要使用特权模式启动容器

变量介绍 DISPLAY: 需要填写宿主机IP地址

  • windows可以通过 控制面板 -> 网络和 Internet -> 网络连接 -> 点击正在使用的网卡 -> 点击查看详细信息 查看
  • Linux 可以通过命令 ip add 或 ifconfig 查看正在使用网卡 IP
docker run -d --name arcs --env LIBGL_ALWAYS_INDIRECT=1 --env DISPLAY="192.168.1.4:0.0" --privileged ccr.ccs.tencentyun.com/aubo/arcs:0.19.4-42bc716

进入容器中执行软件启动命令,之后就可以看到x-server窗口打开

docker exec -it arcs bash
> [root@docker-desktop bin]# ./arcs.sh start

过程演示: 启动容器,xlaunch窗口显示内容

过程演示

results matching ""

    No results matching ""