本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
此基础镜像已被弃用,将不再接收更新。请阅读公告文章获取迁移指南和建议的替代方案。
该镜像属于balena.io物联网设备基础镜像系列,专为CL-SOM-iMX8平台优化,基于Ubuntu系统并预装Python环境。虽然针对balena.io和balenaOS进行了优化,但也可用于任何运行在相应架构上的Docker环境。
!balenalogo
balenalib基础镜像的一些显著特性:
实用的包安装脚本install_packages,抽象了底层包管理器的细节。它将以最少的依赖项安装指定的软件包(忽略可选依赖项),清理包管理器元数据,并在包安装失败时重试。
支持动态插入设备:每个balenalib基础镜像都有一个默认的ENTRYPOINT,定义为ENTRYPOINT ["/usr/bin/entry.sh"]。它会检查UDEV标志是否设置为true(通过添加ENV UDEV=1),如果为true,将启动udevd守护进程,容器的/dev目录中会出现相关的设备节点。
有关更多详细信息,请查看文档中的特性概述。
balenalib镜像提供多种版本,每种版本设计用于特定用例:
:<version> 或 :<version>-run这是默认镜像。run变体设计为精简且最小化的变体,仅包含运行时必需的组件。
:<version>-build构建变体是一个更庞大的镜像,包含许多从源代码构建所需的工具。这减少了您需要在Dockerfile中手动安装的软件包数量,从而减小系统上所有镜像的总体大小。
了解更多关于变体的信息
3.11.2 (latest)3.10.103.9.163.8.16有关此镜像及其历史的更多信息,请参阅balena-io-library/official-images GitHub仓库中的相关清单文件 (cl-som-imx8-ubuntu-python)。
本指南可以帮助您开始在balena中使用此基础镜像,同时还有一些很酷的示例项目可以让您了解使用balena可以实现什么。
Python是一种解释型、交互式、面向对象的开源编程语言。它包含模块、异常、动态类型、非常高级的动态数据类型和类。Python将强大的功能与清晰的语法结合在一起。它与许多系统调用和库以及各种窗口系统都有接口,并且可以用C或C++扩展。它也可用作需要可编程接口的应用程序的扩展语言。最后,Python是可移植的:它可以在许多Unix变体、Mac和Windows 2000及更高版本上运行。
***.org/wiki/Python_(programming_language)
!logo
在您的Python应用项目中创建一个Dockerfile:
FROM balenalib/cl-som-imx8-ubuntu-python:latest WORKDIR /usr/src/app COPY requirements.txt ./ RUN pip install --no-cache-dir -r requirements.txt COPY . . CMD [ "python", "./your-daemon-or-script.py" ]
然后可以构建并运行Docker镜像:
$ docker build -t my-python-app . $ docker run -it --rm --name my-running-app my-python-app
对于许多简单的单文件项目,编写完整的Dockerfile可能不方便。在这种情况下,可以直接使用Python Docker镜像运行Python脚本:
$ docker run -it --rm --name my-running-script -v "$PWD":/usr/src/myapp -w /usr/src/myapp balenalib/cl-som-imx8-ubuntu-python:latest python your-daemon-or-script.py
要启用动态设备检测,需要设置UDEV环境变量:
ENV UDEV=1
设置后,入口脚本将启动udevd守护进程,使容器能够检测和访问宿主机上的设备。
该镜像包含一个便捷的包安装工具,可以简化依赖安装:
RUN install_packages package1 package2 package3
该工具会自动处理不同包管理器的差异,安装指定的软件包并清理不必要的依赖和缓存。
如果您对此镜像有任何问题或疑问,请通过GitHub issue与我们联系。
欢迎您贡献新功能、修复或更新,无论大小;我们始终很高兴收到拉取请求,并会尽最大努力尽快处理它们。
在开始编码之前,我们建议通过GitHub issue讨论您的计划,特别是对于更宏大的贡献。这让其他贡献者有机会为您指明正确的方向,提供有关您设计的反馈,并帮助您了解是否有人正在从事相同的工作。
有关此镜像的文档存储在基础镜像文档中。查看它可以获取我们所有基础镜像的列表,包括许多专门的镜像,如node、python、go、更小的镜像等。
您还可以在此博客文章中找到有关balenalib基础镜像新功能的更多详细信息。
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429