Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/toolisticon/docker-build-images

Various Docker Images for Building NodeJS, Java and Ansible artifacts
https://github.com/toolisticon/docker-build-images

docker gitlab-ci jenkins jenkins-docker kubernetes

Last synced: about 2 months ago
JSON representation

Various Docker Images for Building NodeJS, Java and Ansible artifacts

Awesome Lists containing this project

README

        

# docker-build-images

![Build Status](https://github.com/toolisticon/docker-build-images/actions/workflows/build.yml/badge.svg)

Various Docker Images for Building NodeJS, Java and Ansible artifacts

* Ansible: [![Docker Pulls](https://img.shields.io/docker/pulls/toolisticon/ansible-builder.svg)](https://hub.docker.com/r/toolisticon/ansible-builder)
* Kubernetes: [![Docker Pulls](https://img.shields.io/docker/pulls/toolisticon/kube-builder.svg)](https://hub.docker.com/r/toolisticon/kube-builder)
* Terraform: [![Docker Pulls](https://img.shields.io/docker/pulls/toolisticon/terraform-builder.svg)](https://hub.docker.com/r/toolisticon/terraform-builder)
* Java:
* OpenJDK 11: [![Docker Pulls](https://img.shields.io/docker/pulls/toolisticon/openjdk11-builder.svg)](https://hub.docker.com/r/toolisticon/openjdk11-builder)
* OpenJDK 17: [![Docker Pulls](https://img.shields.io/docker/pulls/toolisticon/openjdk17-builder.svg)](https://hub.docker.com/r/toolisticon/openjdk17-builder)
* OpenJDK 21: [![Docker Pulls](https://img.shields.io/docker/pulls/toolisticon/openjdk21-builder.svg)](https://hub.docker.com/r/toolisticon/openjdk21-builder)
* NodeJS: [![Docker Pulls](https://img.shields.io/docker/pulls/toolisticon/nodejs-builder.svg)](https://hub.docker.com/r/toolisticon/nodejs-builder)

> **Versioning**
>
> We aimed to loosely follow semantic versioning (semver) to tag these docker images and use retagging to make container orchestration easier:
>
> Version 1.2.3 is also matched by tags 1 and 1.2. Once 1.2.4 becomes available, they will be updated to match it, and so on. This is also the naming scheme of many official docker images.
>

- [docker-build-images](#docker-build-images)
- [Usage](#usage)
- [What's installed](#whats-installed)
- [Tools used](#tools-used)

## Usage

### What's installed

All images share common base:
* Chromium
* Docker
* Common tools:
* wget
* [Git Secret](https://git-secret.io)
* rsync
* curl
* nodejs/npm
* kubectl
* helm
* [helmfile](https://helmfile.readthedocs.io)
* [vCluster](https://www.vcluster.com/docs/what-are-virtual-clusters)
* [Testkube](https://testkube.io/)
* Cloud Clients for
* GCloud
* Azure
* AWS
* Database Clients for
* Postgres
* MS SQL
* MongoDB

## Tools used

For building these images [Packer](https://www.packer.io/docs/builders/docker.html) and [Ansible](https://docs.ansible.com/ansible/latest/index.html) are used.

## Development

1. Set new version in `config.json`
2. Run release script: `.bin/release.sh` (Pushes the changes to `develop` branch). So wait for CI build, grab a coffee 😉
3. Once complete, merge changes to `main` branch and wait for CI build
4. Once complete create a new tag: `v` and create a release on GitHub

### Known Issues

#### Not able to provion
```
==> docker.autogenerated_1: failed to handshake
docker.autogenerated_1: [WARNING]: Unhandled error in Python interpreter discovery for host default:
docker.autogenerated_1: Failed to connect to the host via ssh: Unable to negotiate with 127.0.0.1 port
docker.autogenerated_1: 60992: no matching host key type found. Their offer: ssh-rsa
==> docker.autogenerated_1: failed to handshake
```

Add this entry to `.ssh/config`:
```
Host 127.0.0.1
HostKeyAlgorithms +ssh-rsa
PubkeyAcceptedKeyTypes +ssh-rsa
```