解决在 Docker 中启动 labelImg 的相关报错

 更新时间:2026年01月05日 09:46:24   作者:饭来_  
文章介绍了在Ubuntu-22.04中使用Miniconda3创建的Python 3.10虚拟环境下安装labelImg时遇到的两个主要错误及其解决方法:libGL报错和xcb插件报错,解决方法包括安装libGL库和补齐Qt5的xcb依赖项,感兴趣的朋友跟随小编一起看看吧

一、简介

本文提到的报错信息,是在 ubuntu-22.04 中通过 miniconda3 创建的 python-3.10 版本的虚拟环境下安装的labelImg提示的报错。参考如下版本信息,如果有相关的报错可以参考本文的解决方法执行。部分问题也可以通过 减低版本 来解决,需要具体情况具体分析。这里不保证完全有效,仅供参考。

# Name                    Version                   Build  Channel
_libgcc_mutex             0.1                        main  
_openmp_mutex             5.1                       1_gnu  
bzip2                     1.0.8                h5eee18b_6  
ca-certificates           2025.12.2            h06a4308_0  
expat                     2.7.3                h7354ed3_4  
labelimg                  1.8.6                    pypi_0    pypi
ld_impl_linux-64          2.44                 h153f514_2  
libexpat                  2.7.3                h7354ed3_4  
libffi                    3.4.4                h6a678d5_1  
libgcc                    15.2.0               h69a1729_7  
libgcc-ng                 15.2.0               h166f726_7  
libgomp                   15.2.0               h4751f2c_7  
libnsl                    2.0.0                h5eee18b_0  
libstdcxx                 15.2.0               h39759b7_7  
libstdcxx-ng              15.2.0               hc03a8fd_7  
libuuid                   1.41.5               h5eee18b_0  
libxcb                    1.17.0               h9b100fa_0  
libzlib                   1.3.1                hb25bd0a_0  
lxml                      6.0.2                    pypi_0    pypi
ncurses                   6.5                  h7934f7d_0  
openssl                   3.0.18               hd6dcaed_0  
pip                       25.3               pyhc872135_0  
pthread-stubs             0.3                  h0ce48e5_1  
pyqt5                     5.15.11                  pypi_0    pypi
pyqt5-qt5                 5.15.18                  pypi_0    pypi
pyqt5-sip                 12.17.2                  pypi_0    pypi
python                    3.10.19              h6fa692b_0  
readline                  8.3                  hc2a1206_0  
setuptools                80.9.0          py310h06a4308_0  
sqlite                    3.51.0               h2a70700_0  
tk                        8.6.15               h54e0aa7_0  
tzdata                    2025b                h04d1e81_0  
wheel                     0.45.1          py310h06a4308_0  
xorg-libx11               1.8.12               h9b100fa_1  
xorg-libxau               1.0.12               h9b100fa_0  
xorg-libxdmcp             1.1.5                h9b100fa_0  
xorg-xorgproto            2024.1               h5eee18b_1  
xz                        5.6.4                h5eee18b_1  
zlib                      1.3.1                hb25bd0a_0  

二、libGL 报错&解决方法

容器是精简版的 Linux,默认没有 libGL 图形驱动库,所以会提示找不到文件。

Traceback (most recent call last):
  File "/opt/miniconda3/envs/labelImg/lib/python3.10/site-packages/labelImg/labelImg.py", line 18, in <module>
    from PyQt5.QtGui import *
ImportError: libGL.so.1: cannot open shared object file: No such file or directory
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
  File "/opt/miniconda3/envs/labelImg/bin/labelImg", line 3, in <module>
    from labelImg.labelImg import main
  File "/opt/miniconda3/envs/labelImg/lib/python3.10/site-packages/labelImg/labelImg.py", line 27, in <module>
    import sip
ModuleNotFoundError: No module named 'sip'
  1. 执行如下指令解决上述 libGL 报错。
    apt update && apt install -y libgl1-mesa-glx libglib2.0-0 libx11-xcb1
  2. 执行如下指令解决上述 python 依赖,其实在安装 labelimg 的时候已经安装过了。
    # 1. 先安装 pyqt5 相关的 sip
    pip install PyQt5-sip
    # 2. 重新安装 pyqt5 (确保版本完整)
    pip install PyQt5
    # 3. 如果依然报错,尝试安装特定版本的 lxml
    pip install lxml
  3. 需要注意,容器内指定的显示器编号需要和宿主机一致,并且需要具有权限可视化,应最先确认如下信息。
    echo $DISPLAY  # 获取宿主机显示器编号
    echo "export DISPLAY=:1" >> ~/.bashrc  # 在容器内指定相同编号,以 1 为例   

三、xcb 插件报错&解决方法

报错 xcb 插件加载失败,是因为 PyQt5 运行所需的底层 XCB 相关库在容器内还不完整。

qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, wayland-egl, wayland, wayland-xcomposite-egl, wayland-xcomposite-glx, webgl, xcb.
Aborted (core dumped)

执行如下指令,补齐 Qt5 缺失的所有 xcb 依赖。

apt update && apt install -y \
    libxcb-xinerama0 \
    libxcb-icccm4 \
    libxcb-image0 \
    libxcb-keysyms1 \
    libxcb-render-util0 \
    libxcb-xfixes0 \
    libxcb-shape0 \
    libxcb-randr0 \
    libxkbcommon-x11-0 \
    libdbus-1-3

小结

以上内容作为错误记录,仅供参考,不保证完全有效,后续会不断增加。如有其他问题欢迎在评论区讨论!!

到此这篇关于解决在 Docker 中启动 labelImg 的相关报错的文章就介绍到这了,更多相关docker启动labelImg报错内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • docker从安装入门到应用部署及私有仓库搭建基础命令

    docker从安装入门到应用部署及私有仓库搭建基础命令

    这篇文章主要为大家介绍了docker从安装入门到应用部署及私有仓库搭建基础命令,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步早日升职加薪
    2022-04-04
  • docker部署nexus并启用https方式

    docker部署nexus并启用https方式

    这篇文章主要介绍了docker部署nexus并启用https方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08
  • docker部署CASSANDRA全过程

    docker部署CASSANDRA全过程

    本文介绍了如何使用Docker安装和运行Apache Cassandra,包括创建数据表、加载数据、以及进行交互式查询的基本步骤
    2025-01-01
  • 使用docker-compose创建网桥过程

    使用docker-compose创建网桥过程

    文章介绍了通过docker-compose创建网桥(使用hello-world镜像),容器退出后网桥仍存在;删除网桥时使用docker-composedown,网桥消失但其他容器可能仍依赖其网络
    2025-08-08
  • docker部署code-server的方法

    docker部署code-server的方法

    这篇文章主要介绍了docker部署code-server的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-09-09
  • 使用docker部署php服务的详细步骤

    使用docker部署php服务的详细步骤

    Docker镜像是一个可移植的、自包含的单元,其中包含了运行应用程序所需的所有文件、配置和依赖项,当使用Docker部署PHP应用程序时,可以将PHP应用程序和其依赖项打包到一个称为Docker镜像的独立容器中,北本文介绍了使用docker部署php服务的详细步骤,需要的朋友可以参考下
    2024-03-03
  • Docker容器导致磁盘空间不足无法访问的解决方法

    Docker容器导致磁盘空间不足无法访问的解决方法

    本文主要介绍了Docker容器导致磁盘空间不足无法访问的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-05-05
  • 详解如何进入、退出docker容器的方法

    详解如何进入、退出docker容器的方法

    这篇文章主要介绍了详解如何进入、退出docker容器的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • 半小时实现基于ChatGPT搭建微信机器人

    半小时实现基于ChatGPT搭建微信机器人

    这篇文章主要为大家介绍了基于ChatGPT搭建微信机器人过程示例详解,半小时就能完成,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-02-02
  • docker如何自定义网络问题

    docker如何自定义网络问题

    这篇文章主要介绍了docker如何自定义网络问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03

最新评论