epics-in-docker: a small framework for building slim IOC and EPICS tooling container images

The SIRIUS accelerators have used containers for IOCs for years, but build definitions and launch scripts were often duplicated, and image sizes could be over 3GB. On the other hand, the SIRIUS beamlines, until recently, used IOCs installed in a shared NFS, which complicated application management, especially across different OS versions. To address these issues, we have developed a framework for building slim IOC container images (e.g. ADAravis takes 300MB) using a curated set of dependencies (and their versions) and simple and short build definitions. We avoid duplicating shared information by using git submodules, which aids in versioning the base images used. The resulting container images include a standard set of installed packages and scripts, making them ready for deployment in a wide range of container orchestration setups. The shared interface provided by the EPICS build system allows us to also create images with EPICS tools, including CA and PVA gateways and epics-base utilities. For beamlines, it was necessary to adapt the IOC orchestration to also support containerized applications, keeping the same user interface for managing IOCs for beamline and support staff. This article aims to explain the epics-in-docker architecture, the user experience, and how SIRIUS manages containers. It also aims to explore the different tradeoffs made in epics-in-docker and other frameworks, such as our choice to not support different versions of dependencies.

Publication Details

Journal
JACOW
Published
2025-12-05
DOI
https://doi.org/10.18429/jacow-icalepcs2025-wepd031
Primary Topic
Parallel Computing and Optimization Techniques
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

epics-in-docker: a small framework for building slim IOC and EPICS tooling container images

JACOW
Parallel Computing and Optimization Techniques
article

epics-in-docker: a small framework for building slim IOC and EPICS tooling container images

article en

Abstract

The SIRIUS accelerators have used containers for IOCs for years, but build definitions and launch scripts were often duplicated, and image sizes could be over 3GB. On the other hand, the SIRIUS beamlines, until recently, used IOCs installed in a shared NFS, which complicated application management, especially across different OS versions. To address these issues, we have developed a framework for building slim IOC container images (e.g. ADAravis takes 300MB) using a curated set of dependencies (and their versions) and simple and short build definitions. We avoid duplicating shared information by using git submodules, which aids in versioning the base images used. The resulting container images include a standard set of installed packages and scripts, making them ready for deployment in a wide range of container orchestration setups. The shared interface provided by the EPICS build system allows us to also create images with EPICS tools, including CA and PVA gateways and epics-base utilities. For beamlines, it was necessary to adapt the IOC orchestration to also support containerized applications, keeping the same user interface for managing IOCs for beamline and support staff. This article aims to explain the epics-in-docker architecture, the user experience, and how SIRIUS manages containers. It also aims to explore the different tradeoffs made in epics-in-docker and other frameworks, such as our choice to not support different versions of dependencies.

JACOW
Industry, innovation and infrastructure
Openalex Percentile: Top 38%
Parallel Computing and Optimization Techniques
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.