Easily build Docker images with different versions/combinations of common languages/dependencies, for use on CircleCI.
1. Fork this repository and start building it on CircleCI:
2. Add your Docker Hub username (DOCKER_USERNAME
) and password (DOCKER_PASSWORD
) to CircleCI, either as project-specific environment variables (shown below), or as resources in your org-global (default) Context
3. Clone your fork of the project onto your computer
4. Enter the cloned dockerfile-wizard
directory and run make ready
to prepare the config.yml
file for building Docker images on CircleCI
5. Run make setup
in the cloned directory, or else manually add the versions/dependencies that you need to .circleci/config.yml
as specified in the image_config
section
6. Commit and push your changes
Once the build has finished, your image will be available at http://hub.docker.com/r/DOCKER_USERNAME/IMAGE_NAME
and can be used in other projects building on CircleCI (or anywhere else!). The Dockerfile for your image will be stored as an artifact in this project's build
job.
To use the Dockerfile Wizard again, run make reset
in the cloned directory, then repeat steps 4-6.
setup
script adds your requested version information to the config.yml file as environment variablesgenerate.sh
script runs on CircleCI and generates a Dockerfile based on those environment variablesbuild
job fails, check its docker build
step—there's likely a compilation error with a particular version of Ruby, Node, or Python.tap-to-junit
script!