emmanuelgautier /
awesome-dockerfiles
A collection of Dockerfile examples for various programming languages, frameworks and package managers.
69/100 healthLoading repository data…
ITISFoundation / repository
A collection of curated and reusable dockefiles created at IT'IS Foundation
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
A collection of curated dockefiles used to develop great software at the IT'IS Foundation
During our development workflow we use a great variety of thirdparty software tools (e.g. compilers, debuggers, package managers, ...) or services (e.g. CI services, artifacts repositories, monitoring services, ...) . Each of these have a very specific setup and version which is tuned to our needs at that point in time. Encapsulating all these tools in containers allows us to snapshot the tool/service and using it anytime without having to deal with tedious installation following some wiki step-by-step instructions.
This repo keeps a curated list of dockerfiles that are continuously deployed into our public itis-dockerhub repo.
$ make help
help This colourful help
build Builds all images (uses cache)
build-nc Builds all images from scratch
devenv Builds python environment and installs some tooling for operations
clean Cleans all unversioned files in project
Here some of the guidelines we have collected so far:
Every container MUST be defined on its own folder and in a Dockerfile
Dockerfiles SHALL be written following best practicesEvery image MUST include some of the labels defined in label-schema.org
One of the image names MUST be formatted as itisfoundation/${folder-name}:${tag}.
Releases MUST be tagged according to semantic versioning and the corresponding alias (e.g. latest, X.Y, etc)
Every image MUST build from make build
Containers SHALL not address many applications at once
One application per container is the prefered setup. E.g. the cookiecutter containers runs the application with the same name
If this is not the case, they SHALL be refered as toolkits. For instance, pip-kit is a container with several python package management tools that can run with many applications, namely pip-sync, pip-compile, pipdeptree and pipreqs
Containers with mounted volumes MUST run using the same uid:gid as the mounted volume.
Configuration information SHALL be passed into the container as environment variables prefixed with the name of the container.
The "payload" of the container SHALL be run with 'exec' at the end of the entrypoint.sh script to make sure signals get passed properly.
If the "payload" has no explicit internal signal handling add tini as an init replacement (same effect as when running the docker with --init) https://github.com/krallin/tini
You MUST change your version file for each Pull request following the Semantic Versioning
This repository defines a custom action action-build-and-push which is responsible for building, testing and pushing images to a registry (defaults to Docker Hub).
To enable github workflow the following Git Hub secrets must be defined:
DOCKER_HUB_USER Docker Hub usernameDOCKER_HUB_PASSWORD Docker Hub token (password usage is not advised)DOCKER_HUB_TARGET_REGISTRY_NAME if using an organization might be different then the login credentialsProjects under workflow:
docker-registry-syncTo test locally please you would need to install act and use the same secret names as environment variables following in a .env file:
Follow the README in the folder example-config.
Selection of publications worth reading on this topic:
Selected from shared topics, language and repository description—not editorial ratings.
emmanuelgautier /
A collection of Dockerfile examples for various programming languages, frameworks and package managers.
69/100 healthregzon /
Collection of Dockerfiles for building opencv in python for arm-based systems with docker
41/100 healthanayetullahefty /
Docker-Project is a collection of various Dockerized applications. Each project is contained in its own folder with the necessary Docker configurations (Dockerfile, docker-compose.yml, etc.) for building and running the application in isolated containers..
koniz-dev /
A comprehensive collection of production-grade Dockerfile best practices, optimizations, and security patterns for Java, Python, Node.js, Go, and React.
63/100 healthShubhamkhodape /
A collection of ready-to-use Dockerfiles for different tech stacks including Java Spring Boot, Node.js, Python Flask, React, NGINX, and Go. Each Dockerfile is lightweight, production-ready, and easy to customize for your projects.
34/100 healthadatho /
A collection of scripts and dockerfiles to build and package python versions from source
37/100 health