source-to-image for Mac
Source-to-Image (S2I) is a toolkit and workflow for building reproducible container images from source code.
source-to-image — overview
Source-To-Image (S2I)
Overview
Source-to-Image (S2I) is a toolkit and workflow for building reproducible container images from source code. S2I produces ready-to-run images by injecting source code into a container image and letting the container prepare that source code for execution. By creating self-assembling builder images, you can version and control your build environments exactly like you use container images to version your runtime environments.
For a deep dive on S2I you can view this presentation.
Want to try it right now? Download the latest release and run:
$ s2i build https://github.com/sclorg/django-ex centos/python-35-centos7 hello-python $ docker run -p 8080:8080 hello-python
Now browse to http://localhost:8080 to see the running application.
You've just built and run a new container image from source code in a git repository, no Dockerfile necessary.
How Source-to-Image works
For a dynamic language like Ruby, the build-time and run-time environments are typically the same. Starting with a builder image that describes this environment - with Ruby, Bundler, Rake, Apache, GCC, and other packages needed to set up and run a Ruby application installed - source-to-image performs the following steps: Start a container from the builder image with the application source injected into a known directory The container process transforms that source code into the appropriate runnable setup - in this case, by installing dependencies with Bundler and moving the source code into a directory where Apache has been preconfigured to look for the Ruby config.ru file. Commit the new container and set the image entrypoint to be a script (provided by the builder image) that will start Apache to host the Ruby application.
For compiled languages like C, C++, Go, or Java, the dependencies necessary for compilation might dramatically outweigh the size of the actual runtime artifacts. To keep runtime images slim, S2I enables a multiple-step build processes, where a binary artifact such as an executable or Java WAR file is created in the first builder image, extracted, and injected into a second runtime image that simply places the executable in the correct location for execution.
For example, to create a reproducible build pipeline for Tomcat (the popular Java webserver) and Maven: Create a builder image containing OpenJDK and Tomcat that expects to have a WAR file injected Create a second image that layers on top of the first image Maven and any other standard dependencies, and expects to have a Maven project injected Invoke source-to-image using the Java application source and the Maven image to create the desired application WAR Invoke source-to-image a second time using the WAR file from the previous step and the initial Tomcat image to create the runtime image
Details
用于构建源代码并注入到 Docker 镜像的工具
How to install source-to-image
- Open Terminal (press ⌘ + Space and type “Terminal”).
- If Homebrew is not installed yet, run the command below first.
- Run this command:
Latest 10 releases
Last updated 2026-09-22; current version v1.6.4, with the latest 10 releases listed.
| Version | Released | Type | Size | macOS | Windows | Linux |
|---|---|---|---|---|---|---|
| v1.6.4 | 2026-09-22 | Stable | 5.9 MB | Download | Download | Download |
| v1.6.3 | 2026-07-23 | Stable | 5.9 MB | Download | Download | Download |
| v1.6.2 | 2026-06-04 | Stable | 5.9 MB | Download | Download | Download |
| v1.6.1 | 2026-03-11 | Stable | 11.4 MB | Download | Download | Download |
| v1.6.0 | 2026-03-11 | Stable | 11.4 MB | Download | Download | Download |
| v1.5.1 | 2025-06-03 | Stable | 5.8 MB | Download | Download | Download |
| v1.5.0 | 2025-01-13 | Stable | — | — | — | — |
| v1.4.0 | 2024-05-09 | Stable | 5.5 MB | Download | Download | Download |
| v1.3.9 | 2023-10-18 | Stable | 5.4 MB | Download | Download | Download |
| v1.3.8 | 2023-07-06 | Stable | 5.3 MB | Download | Download | Download |
Data from GitHub Releases; stable releases first, each group sorted newest first.
Prebuilt bottle platforms
Official Homebrew bottles cover:
- Apple silicon · latest macOS
- Apple silicon · macOS 26 Tahoe
- Apple silicon · macOS 15 Sequoia
- Linux · ARM64
- Linux · x86_64
⚠️ No prebuilt bottle for Intel Macs; Intel users need brew install --build-from-source to build from source.
Compared with similar apps
Only public metadata is compared, with no subjective recommendation; see the compare pages for field-by-field comparisons.
| App | Version | License | Architecture | 30-day installs |
|---|---|---|---|---|
| source-to-image | v1.6.4 | Apache-2.0 | CLI | 20 |
| mintoolkit | 1.41.8 | Apache-2.0 | CLI | 23 |
| docuum | v0.27.3 | MIT | CLI | 26 |
| whalebrew | 0.5.0 | Apache-2.0 | CLI | 17 |
Similar apps: DevOps & Cloud
mintoolkit
Minify and secure Docker imagesdocuum
Docuum: LRU eviction of Docker imageswhalebrew
Whalebrew creates aliases for Docker images so you can run them as if they were native commands.lazyjournal
Terminal user interface for viewing logs from journald, auditd, file system, Docker and Podman…docker-compose-langserver
Container Tools for Visual Studio Codepowerman-dockerize
Utility to simplify running applications in docker containers.Categories: Command-line Tools, DevOps & Cloud