This project provides a custom base Docker image built on Alpine Linux, integrated with S6 Overlay for efficient process management. It is designed to be lightweight, secure, and extensible, making it ideal for various deployment environments. The image supports multiple architectures, including amd64 and arm64, ensuring versatility. It includes automated GitHub Actions workflows to build and push the image to DockerHub, facilitating seamless integration and deployment. This base image is suitable for developers looking to create reliable and manageable containerized applications.
To install and run this project, follow these specific instructions:
- Latest Stable Image:
docker pull dublok/base-image:alpine-latest
- Latest Nightly Build Image:
docker pull dublok/base-image:alpine-main
- Specific Version (e.g., version
v0.0.1
):docker pull dublok/base-image:alpine-v0.0.1
To run the container using the pulled image, use the following command:
docker run -d dublok/base-image:alpine-latest
Replace alpine-latest
with alpine-main
or alpine-v0.0.1
if you are using the nightly build or a specific version, respectively.
If you need to customize the base image, you can clone the repository and build it locally.
git clone https://github.com/DockForge/base-linux.git
cd custom-base-image
docker build -t yourusername/custom-base-image:latest .
Run the container using your customized image:
docker run -d yourusername/custom-base-image:latest
By following these instructions, you can easily install and run the custom base image tailored to your requirements. For more details and updates, you can check the DockerHub repository: dublok/base-linux.
This custom base Docker image has several common use cases:
- Microservices: Ideal for deploying microservices due to its lightweight and secure nature. The image's efficient process management ensures reliable service operation.
- Development Environments: Suitable for creating consistent and isolated development environments. Its minimal footprint allows for quick setup and efficient use of resources.
- Custom Applications: A great foundation for building custom applications. Developers can easily extend the base image with specific dependencies, creating smaller and more secure images.
- CI/CD Pipelines: Can be integrated into CI/CD pipelines to automate the building, testing, and deployment of applications. Its multi-architecture support ensures compatibility across different platforms.
- Containerized Services: Useful for running containerized services such as web servers or APIs. The image's process management features enhance service stability and performance.
- Testing Environments: Perfect for setting up isolated testing environments. This helps ensure that applications function correctly and are compatible with production environments before deployment.
We welcome contributions from the community. If you wish to contribute, please follow these guidelines:
- Fork the repository and create your branch from
main
. - If you've added code that should be tested, add tests.
- Ensure the test suite passes.
- Make sure your code lints.
- Open a pull request with a detailed description of your changes.
- Email: dublokcom@gmail.com / dockforge@dublok.com
- Main Maintainer: Ercin Dedeoglu LinkedIn
This project relies on several key dependencies to function correctly:
- Alpine Linux: The base image is built on Alpine Linux, a lightweight and secure Linux distribution.
- S6 Overlay: This is used for process supervision and management within the container, ensuring that services are reliably managed.
- Essential Packages: Several core packages are installed during the build process, including:
alpine-baselayout
alpine-keys
apk-tools
busybox
libc-utils
bash
xz
ca-certificates
curl
jq
netcat-openbsd
procps-ng
shadow
tzdata
- Docker: Docker must be installed and properly configured on the system to build and run the container images.
- GitHub Actions: For automated building and pushing of the Docker images, the project uses GitHub Actions, which includes actions for setting up QEMU, Docker Buildx, and Docker login.
These dependencies are crucial for the smooth operation and functionality of the custom base image, providing a secure and efficient environment for various applications.
This project is licensed under the GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007. See the LICENSE file for more details.