Unofficial tools to build Bitnami containers using open source to support Bitnami charts (Arm64 support)
Bitnami-Compat
What is Bitnami-Compat?
- Build https://github.com/bitnami/containers locally ( without Bitnami's StackSmith binaries )
Goal
- [x] Build https://github.com/bitnami/containers
- [x] Support https://github.com/bitnami/charts
Not Goal
- Support every images and charts on Bitnami's
- Production ready or commercial support.
More detail
- These images use Bitnami's scripts. Binaries refer to the official Docker or official distribution binaries of the software or Docker recipes for Docker.
* Some example : https://gist.github.com/ZCube/7e3045b1f15b1c1223f58267fc738e57
Update bitnami-dockers schedule
- day-of-month 1 in every 2nd month
Usage #1
- I know I can't make the images in this repository trustworthy, and I know I can't fix it. This repository is just a personal repository.
- If you want to use the images, It is recommended not to use the image directly, but to create Dockerfile.arm64 by following the instructions below and then verify and use it.
- Create Dockerfile.arm64 for bitnami-dockers
git clone --recursive https://github.com/ZCube/bitnami-compat
cd bitnami-compat
task generate
or
go run main.go generate --app=mongodb
4. verify Dockerfile.arm64. Official images or build scripts referenced for build are listed in the table below.
5. build & use. (docker buildx needed)
task build
or (current platform only)
go run main.go build --app=mongodb --tag ghcr.io/zcube/bitnami-compat/
or (current platform only && push)
go run main.go build --app=mongodb --tag ghcr.io/zcube/bitnami-compat/ --push
or (docker buildx needed && push)
go run main.go build --app=mongodb --tag ghcr.io/zcube/bitnami-compat/ --push --platforms=linux/amd64,linux/arm64
docker run --rm -ti ghcr.io/zcube/bitnami-compat/mongodb:6.0
- PS. Rabbitmq and fluentd builds are too long. Depending on the machine, it is best to prepare for 1-2 hours.
Usage #2
- TL;DR
image:
registry: docker.io
repository: bitnami/postgresql
tag: 11.16.0-debian-11-r14
to
image:
registry: ghcr.io
repository: zcube/bitnami-compat/postgresql
tag: 11.16.0-debian-11-r15
or
curl -LO https://raw.githubusercontent.com/ZCube/bitnami-compat/main/values/valuesbitnamicompat_postgresql.yaml
helm install db bitnami/postgresql -f valuesbitnamicompat_postgresql.yaml
Test
- https://github.com/ZCube/bitnami-compat-test
- legend
- note
- result
Supported bitnami charts
* ✔️ apache
- ✔️ cert-manager
- ✔️ common
- ✔️ consul
- ✔️ contour
- ✔️ contour-operator
- ✔️ discourse
- ✔️ elasticsearch
- ✔️ etcd
- ✔️ external-dns
- ✔️ fluentd
- ✔️ gitea
- ✔️ kafka
- ✔️ keycloak
- ✔️ kibana
- ✔️ kube-state-metrics
- ✔️ kubernetes-event-exporter
- ✔️ logstash
- ✔️ mariadb
- ✔️ mariadb-galera
- ✔️ mastodon
- ✔️ memcached
- ✔️ minio
- ✔️ mongodb
- ✔️ mongodb-sharded
- ✔️ mysql
- ✔️ nginx
- ✔️ node-exporter
- ✔️ postgresql
- ✔️ postgresql-ha
- ✔️ rabbitmq
- ✔️ rabbitmq-cluster-operator
- ✔️ redis
- ✔️ redis-cluster
- ✔️ sealed-secrets
- ✔️ solr
- ✔️ thanos
- ✔️ tomcat
- ✔️ wordpress
- ✔️ zookeeper
- ❌ grafana
* ✔️ grafana
* ❌ grafana-image-renderer
* ✔️ bitnami-shell
- ❌ grafana-loki
* ❌ grafana-loki
* ✔️ nginx
* ❌ promtail
* ✔️ bitnami-shell
* ✔️ memcached
* ✔️ memcached
* ✔️ memcached
* ✔️ memcached
- ❌ grafana-operator
* ❌ grafana-operator
* ✔️ grafana
- ❌ grafana-tempo
* ❌ grafana-tempo
* ❌ grafana-tempo-query
* ❌ grafana-tempo-vulture
* ✔️ bitnami-shell
- ❌ nginx-ingress-controller
* ❌ nginx-ingress-controller
* ✔️ nginx
- For wordpress-intel charts, try using wordpress-nginx instead of wordpress-intel images. (wordpress-intel = wordpress-nginx)
Binary References
|Package|Type|Reference|Base| |--|--|--|--| |acmesolver|DockerImage|https://quay.io/jetstack/cert-manager-acmesolver|bitnami/minideb| |cainjector|DockerImage|https://quay.io/jetstack/cert-manager-cainjector|bitnami/minideb| |cert-manager|DockerImage|https://quay.io/jetstack/cert-manager-controller|bitnami/minideb| |cert-manager-webhook|DockerImage|https://quay.io/jetstack/cert-manager-webhook|bitnami/minideb| |consul|DockerImage|https://hub.docker.com/_/consul|bitnami/minideb| |consul-exporter|Dockerfile|https://hub.docker.com/r/prom/consul-exporter|bitnami/minideb| |elasticsearch|Install|https://www.elastic.co/guide/en/elasticsearch/reference/current/targz.html|bitnami/minideb| |etcd|Dockerfile|https://gcr.io/etcd-development/etcd|bitnami/minideb| |fluentd|Dockerfile|https://github.com/fluent/fluentd-docker-image|bitnami/minideb| |jmx-exporter|Install|https://repo1.maven.org/maven2/io/prometheus/jmx|bitnami/minideb| |kafka|Install|https://downloads.apache.org/kafka|bitnami/minideb| |kubectl|Install|https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/|bitnami/minideb| |keycloak|Dockerfile|https://github.com/keycloak/keycloak-containers|bitnami/minideb| |mariadb|Dockerfile|https://github.com/MariaDB/mariadb-docker|bitnami/minideb| |mariadb-galera|Dockerfile|https://github.com/MariaDB/mariadb-docker|bitnami/minideb| |memcached|Dockerfile|https://github.com/docker-library/memcached|bitnami/minideb| |minio|DockerImage|https://hub.docker.com/r/minio/minio|bitnami/minideb| |minio-client|DockerImage|https://hub.docker.com/r/minio/mc|bitnami/minideb| |mongodb|Dockerfile|https://github.com/docker-library/mongo|bitnami/minideb| |mysql|DockerImage|https://hub.docker.com/r/mysql|mysql/mysql-server| |mysqld-exporter|Dockerfile|https://hub.docker.com/r/prom/mysqld-exporter|bitnami/minideb| |nginx|Dockerfile|https://github.com/nginxinc/docker-nginx|bitnami/minideb| |pgpool|Dockerfile|https://github.com/docker-library/postgres|bitnami/minideb| |postgresql|Dockerfile|https://github.com/docker-library/postgres|bitnami/minideb| |postgresql-repmgr|Dockerfile|https://github.com/docker-library/postgres|bitnami/minideb| |rabbitmq|Dockerfile|https://github.com/docker-library/rabbitmq|bitnami/minideb| |redis|Dockerfile|https://github.com/docker-library/redis|bitnami/minideb| |redis-cluster|Dockerfile|https://github.com/docker-library/redis|bitnami/minideb| |redis-exporter|DockerImage|https://hub.docker.com/r/oliver006/redis_exporter|bitnami/minideb| |redis-sentinel|Dockerfile|https://github.com/docker-library/redis|bitnami/minideb| |tomcat|Install|https://downloads.apache.org/tomcat|bitnami/minideb| |wordpress|||bitnami/minideb| |zookeeper|Install|https://downloads.apache.org/zookeeper|bitnami/minideb|
Supported images and tags
- :warning: For RabbitMQ for ARM64, JIT is disabled for building on AMD64.
- :warning: For some images such as node and python, apache, java, the version can only match the major version. This is mostly the case for non-main apps, and I don't care because they're mostly dependencies for other apps.
- :warning: The mongodb provided by this repository does not currently work on Raspberry Pi 4. Use the image I distribute at https://github.com/ZCube/mongodb-for-armv8.0-a.
- acmesolver :
1,1-debian-11,1.11.1,1.11.1-debian-11,1.11.1-debian-11-r64 - apache :
2.4,2.4-debian-11,2.4.57,2.4.57-debian-11,2.4.57-debian-11-r64 - apache-exporter :
0,0-debian-11,0.13.3,0.13.3-debian-11,0.13.3-debian-11-r64 - bitnami-shell :
11,11-debian-11,11.0.0,11.0.0-debian-11,11.0.0-debian-11-r64 - cainjector :
1,1-debian-11,1.11.1,1.11.1-debian-11,1.11.1-debian-11-r64 - cert-manager :
1,1-debian-11,1.11.1,1.11.1-debian-11,1.11.1-debian-11-r64 - cert-manager-webhook :
1,1-debian-11,1.11.1,1.11.1-debian-11,1.11.1-debian-11-r64 - consul :
1,1-debian-11,1.15.2,1.15.2-debian-11,1.15.2-debian-11-r64 - consul-exporter :
0,0-debian-11,0.9.0,0.9.0-debian-11,0.9.0-debian-11-r64 - contour :
1.21,1.21-debian-11,1.21.3,1.21.3-debian-11,1.21.3-debian-11-r64 - contour :
1.22,1.22-debian-11,1.22.6,1.22.6-debian-11,1.22.6-debian-11-r64 - contour :
1.23,1.23-debian-11,1.23.5,1.23.5-debian-11,1.23.5-debian-11-r64 - contour :
1.24,1.24-debian-11,1.24.4,1.24.4-debian-11,1.24.4-debian-11-r64 - contour-operator :
1.21,1.21-scratch,1.21.1,1.21.1-scratch,1.21.1-scratch-r64 - contour-operator :
1.22,1.22-scratch,1.22.1,1.22.1-scratch,1.22.1-scratch-r64 - contour-operator :
1.23,1.23-scratch,1.23.0,1.23.0-scratch,1.23.0-scratch-r64 - contour-operator :
1.24,1.24-scratch,1.24.0,1.24.0-scratch,1.24.0-scratch-r64 - discourse :
3,3-debian-11,3.0.3,3.0.3-debian-11,3.0.3-debian-11-r64 - elasticsearch :
7,7-debian-11,7.17.9,7.17.9-debian-11,7.17.9-debian-11-r64 - elasticsearch :
8,8-debian-11,8.7.0,8.7.0-debian-11,8.7.0-debian-11-r64 - elasticsearch-exporter :
1,1-debian-11,1.5.0,1.5.0-debian-11,1.5.0-debian-11-r64 - envoy :
1.23,1.23-debian-11,1.23.9,1.23.9-debian-11,1.23.9-debian-11-r64 - envoy :
1.24,1.24-debian-11,1.24.7,1.24.7-debian-11,1.24.7-debian-11-r64 - etcd :
3.3,3.3-debian-11,3.3.27,3.3.27-debian-11,3.3.27-debian-11-r64 - etcd :
3.4,3.4-debian-11,3.4.25,3.4.25-debian-11,3.4.25-debian-11-r64 - etcd :
3.5,3.5-debian-11,3.5.8,3.5.8-debian-11,3.5.8-debian-11-r64 - external-dns :
0,0-debian-11,0.13.4,0.13.4-debian-11,0.13.4-debian-11-r64 - fluentd :
1,1-debian-11,1.16.1,1.16.1-debian-11,1.16.1-debian-11-r64 - git :
2,2-debian-11,2.40.1,2.40.1-debian-11,2.40.1-debian-11-r64 - gitea :
1,1-debian-11,1.19.2,1.19.2-debian-11,1.19.2-debian-11-r64 - grafana :
9,9-debian-11,9.5.1,9.5.1-debian-11,9.5.1-debian-11-r64 - java :
1.8,1.8-debian-11,1.8.362,1.8.362-debian-11,1.8.362-debian-11-r64 - java :
11,11-debian-11,11.0.19,11.0.19-debian-11,11.0.19-debian-11-r64 - java :
17,17-debian-11,17.0.7,17.0.7-debian-11,17.0.7-debian-11-r64 - jmx-exporter :
0,0-debian-11,0.18.0,0.18.0-debian-11,0.18.0-debian-11-r64 - kafka :
3.2,3.2-debian-11,3.2.3,3.2.3-debian-11,3.2.3-debian-11-r64 - kafka :
3.3,3.3-debian-11,3.3.2,3.3.2-debian-11,3.3.2-debian-11-r64 - kafka :
3.4,3.4-debian-11,3.4.0,3.4.0-debian-11,3.4.0-debian-11-r64 - kafka-exporter :
1,1-debian-11,1.6.0,1.6.0-debian-11,1.6.0-debian-11-r64 - keycloak :
21,21-debian-11,21.0.2,21.0.2-debian-11,21.0.2-debian-11-r64 - keycloak-config-cli :
5,5-debian-11,5.6.1,5.6.1-debian-11,5.6.1-debian-11-r64 - kibana :
7,7-debian-11,7.17.9,7.17.9-debian-11,7.17.9-debian-11-r64 - kibana :
8,8-debian-11,8.7.0,8.7.0-debian-11,8.7.0-debian-11-r64 - kube-state-metrics :
2,2-debian-11,2.8.2,2.8.2-debian-11,2.8.2-debian-11-r64 - kubectl :
1.24,1.24-debian-11,1.24.13,1.24.13-debian-11,1.24.13-debian-11-r64 - kubectl :
1.25,1.25-debian-11,1.25.9,1.25.9-debian-11,1.25.9-debian-11-r64 - kubectl :
1.26,1.26-debian-11,1.26.4,1.26.4-debian-11,1.26.4-debian-11-r64 - kubectl :
1.27,1.27-debian-11,1.27.1,1.27.1-debian-11,1.27.1-debian-11-r64 - kubernetes-event-exporter :
1,1-debian-11,1.1.0,1.1.0-debian-11,1.1.0-debian-11-r64 - logstash :
7,7-debian-11,7.17.9,7.17.9-debian-11,7.17.9-debian-11-r64 - logstash :
8,8-debian-11,8.7.0,8.7.0-debian-11,8.7.0-debian-11-r64 - mariadb :
10.10,10.10-debian-11,10.10.3,10.10.3-debian-11,10.10.3-debian-11-r64 - mariadb :
10.5,10.5-debian-11,10.5.19,10.5.19-debian-11,10.5.19-debian-11-r64 - mariadb :
10.6,10.6-debian-11,10.6.12,10.6.12-debian-11,10.6.12-debian-11-r64 - mariadb :
10.8,10.8-debian-11,10.8.7,10.8.7-debian-11,10.8.7-debian-11-r64 - mariadb :
10.9,10.9-debian-11,10.9.5,10.9.5-debian-11,10.9.5-debian-11-r64 - mariadb-galera :
10.10,10.10-debian-11,10.10.3,10.10.3-debian-11,10.10.3-debian-11-r64 - mariadb-galera :
10.5,10.5-debian-11,10.5.19,10.5.19-debian-11,10.5.19-debian-11-r64 - mariadb-galera :
10.6,10.6-debian-11,10.6.12,10.6.12-debian-11,10.6.12-debian-11-r64 - mariadb-galera :
10.8,10.8-debian-11,10.8.7,10.8.7-debian-11,10.8.7-debian-11-r64 - mariadb-galera :
10.9,10.9-debian-11,10.9.5,10.9.5-debian-11,10.9.5-debian-11-r64 - mastodon :
4,4-debian-11,4.1.2,4.1.2-debian-11,4.1.2-debian-11-r64 - memcached :
1,1-debian-11,1.6.19,1.6.19-debian-11,1.6.19-debian-11-r64 - memcached-exporter :
0,0-debian-11,0.11.3,0.11.3-debian-11,0.11.3-debian-11-r64 - minio :
2023,2023-debian-11,2023.4.28,2023.4.28-debian-11,2023.4.28-debian-11-r64 - minio-client :
2023,2023-debian-11,2023.4.12,2023.4.12-debian-11,2023.4.12-debian-11-r64 - mongodb :
5.0,5.0-debian-11,5.0.17,5.0.17-debian-11,5.0.17-debian-11-r64 - mongodb :
6.0,6.0-debian-11,6.0.5,6.0.5-debian-11,6.0.5-debian-11-r64 - mongodb-exporter :
0,0-debian-11,0.37.0,0.37.0-debian-11,0.37.0-debian-11-r64 - mongodb-sharded :
5.0,5.0-debian-11,5.0.17,5.0.17-debian-11,5.0.17-debian-11-r64 - mongodb-sharded :
6.0,6.0-debian-11,6.0.5,6.0.5-debian-11,6.0.5-debian-11-r64 - mysql :
8.0,8.0-debian-11,8.0.33,8.0.33-debian-11,8.0.33-debian-11-r64 - mysqld-exporter :
0,0-debian-11,0.14.0,0.14.0-debian-11,0.14.0-debian-11-r64 - nginx :
1.23,1.23-debian-11,1.23.4,1.23.4-debian-11,1.23.4-debian-11-r64 - nginx-exporter :
0,0-debian-11,0.11.0,0.11.0-debian-11,0.11.0-debian-11-r64 - node :
14,14-debian-11,14.21.3,14.21.3-debian-11,14.21.3-debian-11-r64 - node :
16,16-debian-11,16.20.0,16.20.0-debian-11,16.20.0-debian-11-r64 - node :
18,18-debian-11,18.16.0,18.16.0-debian-11,18.16.0-debian-11-r64 - node-exporter :
1,1-debian-11,1.5.0,1.5.0-debian-11,1.5.0-debian-11-r64 - openldap :
2.6,2.6-debian-11,2.6.4,2.6.4-debian-11,2.6.4-debian-11-r64 - pgpool :
4,4-debian-11,4.4.2,4.4.2-debian-11,4.4.2-debian-11-r64 - postgres-exporter :
0,0-debian-11,0.12.0,0.12.0-debian-11,0.12.0-debian-11-r64 - postgresql :
11,11-debian-11,11.19.0,11.19.0-debian-11,11.19.0-debian-11-r64 - postgresql :
12,12-debian-11,12.14.0,12.14.0-debian-11,12.14.0-debian-11-r64 - postgresql :
13,13-debian-11,13.10.0,13.10.0-debian-11,13.10.0-debian-11-r64 - postgresql :
14,14-debian-11,14.7.0,14.7.0-debian-11,14.7.0-debian-11-r64 - postgresql :
15,15-debian-11,15.2.0,15.2.0-debian-11,15.2.0-debian-11-r64 - postgresql-repmgr :
11,11-debian-11,11.19.0,11.19.0-debian-11,11.19.0-debian-11-r64 - postgresql-repmgr :
12,12-debian-11,12.14.0,12.14.0-debian-11,12.14.0-debian-11-r64 - postgresql-repmgr :
13,13-debian-11,13.10.0,13.10.0-debian-11,13.10.0-debian-11-r64 - postgresql-repmgr :
14,14-debian-11,14.7.0,14.7.0-debian-11,14.7.0-debian-11-r64 - postgresql-repmgr :
15,15-debian-11,15.2.0,15.2.0-debian-11,15.2.0-debian-11-r64 - python :
3.10,3.10-debian-11,3.10.11,3.10.11-debian-11,3.10.11-debian-11-r64 - python :
3.11,3.11-debian-11,3.11.3,3.11.3-debian-11,3.11.3-debian-11-r64 - python :
3.7,3.7-debian-11,3.7.16,3.7.16-debian-11,3.7.16-debian-11-r64 - python :
3.8,3.8-debian-11,3.8.16,3.8.16-debian-11,3.8.16-debian-11-r64 - python :
3.9,3.9-debian-11,3.9.16,3.9.16-debian-11,3.9.16-debian-11-r64 - rabbitmq :
3.10,3.10-debian-11,3.10.22,3.10.22-debian-11,3.10.22-debian-11-r64 - rabbitmq :
3.11,3.11-debian-11,3.11.15,3.11.15-debian-11,3.11.15-debian-11-r64 - rabbitmq :
3.9,3.9-debian-11,3.9.29,3.9.29-debian-11,3.9.29-debian-11-r64 - rabbitmq-cluster-operator :
2,2-scratch,2.2.0,2.2.0-scratch,2.2.0-scratch-r64 - redis :
6.2,6.2-debian-11,6.2.12,6.2.12-debian-11,6.2.12-debian-11-r64 - redis :
7.0,7.0-debian-11,7.0.11,7.0.11-debian-11,7.0.11-debian-11-r64 - redis-cluster :
6.2,6.2-debian-11,6.2.12,6.2.12-debian-11,6.2.12-debian-11-r64 - redis-cluster :
7.0,7.0-debian-11,7.0.11,7.0.11-debian-11,7.0.11-debian-11-r64 - redis-exporter :
1,1-debian-11,1.50.0,1.50.0-debian-11,1.50.0-debian-11-r64 - redis-sentinel :
6.2,6.2-debian-11,6.2.12,6.2.12-debian-11,6.2.12-debian-11-r64 - redis-sentinel :
7.0,7.0-debian-11,7.0.11,7.0.11-debian-11,7.0.11-debian-11-r64 - rmq-default-credential-updater :
1,1-scratch,1.0.2,1.0.2-scratch,1.0.2-scratch-r64 - rmq-messaging-topology-operator :
1,1-scratch,1.10.3,1.10.3-scratch,1.10.3-scratch-r64 - sealed-secrets :
0,0-scratch,0.20.5,0.20.5-scratch,0.20.5-scratch-r64 - solr :
8,8-debian-11,8.11.2,8.11.2-debian-11,8.11.2-debian-11-r64 - solr :
9,9-debian-11,9.2.0,9.2.0-debian-11,9.2.0-debian-11-r64 - thanos :
0,0-scratch,0.31.0,0.31.0-scratch,0.31.0-scratch-r64 - tomcat :
10.1,10.1-debian-11,10.1.8,10.1.8-debian-11,10.1.8-debian-11-r64 - tomcat :
8.5,8.5-debian-11,8.5.88,8.5.88-debian-11,8.5.88-debian-11-r64 - tomcat :
9.0,9.0-debian-11,9.0.74,9.0.74-debian-11,9.0.74-debian-11-r64 - wordpress :
6,6-debian-11,6.2.0,6.2.0-debian-11,6.2.0-debian-11-r64 - wordpress-nginx :
6,6-debian-11,6.2.0,6.2.0-debian-11,6.2.0-debian-11-r64 - zookeeper :
3.7,3.7-debian-11,3.7.1,3.7.1-debian-11,3.7.1-debian-11-r64 - zookeeper :
3.8,3.8-debian-11,3.8.1,3.8.1-debian-11,3.8.1-debian-11-r64
Install Task
- using task https://taskfile.dev/installation/
sh -c "$(curl --location https://taskfile.dev/install.sh)" -- -d -b /usr/local/bin
List docker image patch status
go run main.go list
...
✔️ mongodb:5.0.9
✔️ mongodb-exporter:0.33.0
❌ mysql:5.7.38
❌ mysql.5.7.38-150
✔️ mysql:8.0.29
✔️ mysqld-exporter:0.14.0
❌ nginx:1.21.6
❌ nginx.1.21.6-153
❌ nginx:1.22.0
❌ nginx.1.22.0-153
✔️ nginx:1.23.0
...
Generate Dockerfile.arm64
task generate
Upgrade bitnami docker repositories
task upgrade
How to add a new image
This section has moved to the Wiki.
Compatible Images for Bitnami Charts
- Recommended for production use.
License
Apache 2.0
Copyright © 2023 ZCube(zcubekr@gmail.com)
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
License for generator (Golang scripts)
MIT License
License for patches
check References
License for Bitnami's code.
https://github.com/bitnami/charts
https://github.com/bitnami/containers
Copyright © 2023 Bitnami
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.