Dockerized simplified environment with Make and Docker to be used as CI/CD runner for more complicated images, like docker-simple-runner
Docker image with Make, Docker and Python
Docker image is available at DockerHub under devopsinfra/docker-simple-runner.
For example:
devopsinfra/docker-simple-runner:latest
Source code is available at devopsinfra/docker-simple-runner.
To be done
To be done
For example: To be done
| Name | Type | Description | Source/Documentation |
|---|---|---|---|
| bash | Binary | For color output. Assures also access to some builtins. | https://www.gnu.org/software/bash/ |
| docker | Binary | For running another container, e.g. my devopsinfra/docker-terragrunt | https://github.com/devopsinfra/docker-terragrunt |
| make | Binary | For using Makefile instead of scripts in deployment process. |
https://www.gnu.org/software/make/ |
| ncurses | Binary | For expanding Makefile with some colors. |
https://invisible-island.net/ncurses/announce.html |
| python3 | Binary | For running more complex scripts during deployment process. | https://www.python.org/ |
| requests | Python library | For sending HTTP requests, for example integration with Slack | https://github.com/psf/requests |
| slack_sdk | Python library | For integration with Slack applications/bots, e.g. creating channels for notifications | https://github.com/slackapi/python-slack-sdk |
To publish images from a fork, set these variables so Task uses your registry identities:
DOCKER_USERNAME, DOCKER_ORG_NAME, GITHUB_USERNAME, GITHUB_ORG_NAME.
Two supported options (environment variables take precedence over .env):
# .env (local only, not committed)
DOCKER_USERNAME=your-dockerhub-user
DOCKER_ORG_NAME=your-dockerhub-org
GITHUB_USERNAME=your-github-user
GITHUB_ORG_NAME=your-github-org# Shell override
DOCKER_USERNAME=your-dockerhub-user \
DOCKER_ORG_NAME=your-dockerhub-org \
GITHUB_USERNAME=your-github-user \
GITHUB_ORG_NAME=your-github-org \
task docker:buildRecommended setup:
- Local development: use a
.envfile. - GitHub Actions: set repo variables for the four values above, and secrets for
DOCKER_TOKENandGITHUB_TOKEN.
Publish images without a release:
- Run the
(Manual) Update Versionworkflow withbuild_only: trueto build and push images without tagging a release.