概述
本镜像由Academy Software Foundation (ASWF) 提供,专为OpenShadingLanguage (OSL) 的持续集成(CI)构建设计。包含OSL编译所需的全部上游依赖(如Python、Boost、Qt、OpenEXR、OpenImageIO等),不含OSL本身,主要用于OSL的构建和测试流程。
核心功能与特性
- 预安装依赖:集成OSL编译所需的各类依赖库,无需手动配置
- 多版本支持:提供不同年份(2019-2026)和Clang编译器版本的镜像,满足不同构建需求
- 标准化环境:遵循VFX Platform标准,确保与视觉特效行业软件生态兼容
- GPU支持:包含CUDA和Optix,支持GPU相关功能的编译与测试
使用场景
- OpenShadingLanguage的持续集成构建
- OSL跨版本兼容性测试
- 视觉特效项目中OSL shader的编译环境验证
- 基于VFX Platform标准的渲染工具链构建
镜像标签及组件说明
2019系列
-
aswf/ci-osl:2019-clang6.5
- 组件:cpython-2.7.15、imath-2.3.0、oiio-2.0.8、partio-1.10.1、pybind11-2.4.3、qt-5.12.6、cuda-10.2、optix-7.1.0、numpy-1.14、vfxplatform-2019
-
aswf/ci-osl:2019-clang7.5、2019-clang8.5、2019-clang9.5、2019-clang10.5
组件与2019-clang6.5相同,仅Clang版本不同
2020系列
- aswf/ci-osl:2020-clang7.5
- 组件:cpython-3.7.3、imath-2.4.0、oiio-2.1.13.0、partio-1.10.1、pybind11-2.4.3、qt-5.12.6、cuda-10.2、optix-7.1.0、numpy-1.16、vfxplatform-2020
2021系列
- aswf/ci-osl:2021-clang10.7、2021-clang11.7
- 组件:cpython-3.7.9、imath-2.5.5、oiio-2.2.14.0、partio-1.14.0、pybind11-2.6.2、qt-5.15.2、cuda-11.4.0、optix-7.2.0、numpy-1.19、vfxplatform-2021
2022系列
- aswf/ci-osl:2022-clang10.11、2022-clang11.11、2022-clang12.2、2022-clang13.2、2022-clang14.1
- 组件:cpython-3.9.15、imath-3.1.5、oiio-2.4.5.0、partio-1.14.0、pybind11-2.8.1、qt-5.15.2、cuda-11.4.0、optix-7.2.0、numpy-1.20、vfxplatform-2022
2023系列
- aswf/ci-osl:2023-clang14.2、2023-clang15.2
- 组件:cpython-3.10.11、imath-3.1.9、oiio-2.4.13.0、partio-1.17.1、pybind11-2.9.2、qt-5.15.9、cuda-11.8.0、optix-7.7.0、numpy-1.23.5、vfxplatform-2023
2024系列
- aswf/ci-osl:2024-clang16.4、2024-clang17.4
- 组件:cpython-3.11.13、fmt-11.2.0、imath-3.1.12、oiio-2.5.19.0、partio-1.19.0、pugixml-1.14、pybind11-2.13.6、qt-6.5.6、zlib-1.3.1、cuda-12.6.3、optix-8.0.0、numpy-1.24.3、vfxplatform-2024
2025系列
- aswf/ci-osl:2025-clang18.3、2025-clang19.3
- 组件:cpython-3.11.13、fmt-11.2.0、imath-3.1.12、oiio-3.1.6.2、partio-1.19.0、pugixml-1.14、pybind11-2.13.6、qt-6.5.6、zlib-1.3.1、cuda-12.6.3、optix-8.0.0、numpy-1.26.4、vfxplatform-2025
2026系列
- aswf/ci-osl:2026-clang19.1、2026-clang20.1
- 组件:cpython-3.13.3、fmt-11.2.0、imath-3.2.2、oiio-3.1.6.2、partio-1.19.0、pugixml-1.15、pybind11-2.13.6、qt-6.8.3、zlib-1.3.1、cuda-12.9.1、optix-8.0.0、numpy-2.3.2、vfxplatform-2026
使用示例
基本使用(以2024-clang16.4为例)
bash
docker run -it --rm -v $(pwd):/workspace aswf/ci-osl:2024-clang16.4 /bin/bash
构建OSL示例
bash
# 克隆OSL代码
git clone https://github.com/imageworks/OpenShadingLanguage.git /workspace/osl
# 启动容器并运行构建
docker run -it --rm -v $(pwd)/osl:/workspace aswf/ci-osl:2024-clang16.4 bash -c "
cd /workspace && \
mkdir build && cd build && \
cmake .. && \
make -j$(nproc)
"
相关资源
- ASWF官方网站
- https://github.com/AcademySoftwareFoundation/aswf-docker
- https://hub.docker.com/r/aswf/ci-osl
- ASWF Slack #wg-ci频道(讨论交流)