Graylog2 / graylog-docker

Official Graylog Docker image
https://hub.docker.com/r/graylog/graylog/
Apache License 2.0
356 stars 133 forks source link

New release pipeline #193

Closed malcyon closed 2 years ago

malcyon commented 2 years ago

Update the multi-platform image pipeline to also build the graylog and graylog-enterprise images.

This allows all images to be multi-platform (both arm64 and amd64). The jre-11 images have been multiplatform for some time. This will extend that functionality to the other images.

The old Docker Hub build rules will need to be removed. But the rules for 3.x will stay. So, 3.x builds will happen in Docker Hub and 4.x builds will happen in Jenkins.

The -arm64 tags will go away, since the main image tags will be multiplatform.

malcyon commented 2 years ago

Test plan: Use replay functionality in Jenkins on the last 'tag' build. Insert new code into the replay, with image names replaced with graylog-test and graylog-test-enterprise. Test new images using docker-compose.yml.

malcyon commented 2 years ago

Test successful.

The test job: https://jenkins.ci.torch.sh/job/Release-Jobs/job/Build-Docker/view/tags/job/4.2.4-1/3/console

On my Linux laptop:

donald@laptop:~/src/docker-compose/open-core$ docker inspect graylog/graylog-test:4.2 | grep Architecture
        "Architecture": "amd64",
donald@laptop:~/src/docker-compose/open-core$ docker inspect graylog/graylog-enterprise-test:4.2 | grep Architecture
        "Architecture": "amd64",
donald@laptop:~/src/docker-compose/open-core$ uname -m
x86_64

On an ec2 a1.large instance:

root@ip-172-30-0-62:~# docker inspect graylog/graylog-test:4.2 | grep Architecture
        "Architecture": "arm64",
root@ip-172-30-0-62:~# docker inspect graylog/graylog-enterprise-test:4.2 | grep Architecture
        "Architecture": "arm64",
root@ip-172-30-0-62:~# uname -m
aarch64

I was able to run our docker-compose on both platforms using the test image.

malcyon commented 2 years ago

Okay, since it's merged, I will delete the 4.x Dockerhub build rules.