Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build and publish multi-arch docker images on tag #323

Merged
merged 12 commits into from
Oct 1, 2021

Conversation

MikeGoldsmith
Copy link
Contributor

@MikeGoldsmith MikeGoldsmith commented Sep 28, 2021

Which problem is this PR solving?

When publishing to docker, our images should be built and be runnable on multiple architectures. This PR updates our docker image build process to use Google KO to build the image.

Short description of the changes

  • update go.mod to use v.1.16
  • replace docker orb with new publish_docker job
  • use ko to build multi-arch docker image
  • add build/build_docker.sh to manage executing ko command

@MikeGoldsmith MikeGoldsmith requested a review from a team September 28, 2021 15:06
@MikeGoldsmith MikeGoldsmith self-assigned this Sep 28, 2021
build/build_docker.sh Outdated Show resolved Hide resolved
@robbkidd robbkidd self-assigned this Sep 29, 2021
Copy link
Member

@robbkidd robbkidd left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Carrying over some @ismith's recommendations in similar changes to honeymarker

.circleci/config.yml Outdated Show resolved Hide resolved
.circleci/config.yml Outdated Show resolved Hide resolved
build/build_docker.sh Show resolved Hide resolved
MikeGoldsmith and others added 5 commits October 1, 2021 13:25
Co-authored-by: Robb Kidd <robbkidd@honeycomb.io>
…i-arch-docker

* 'main' of github.com:honeycombio/refinery:
  Add dynamic sampler support to rules based samplers (#317)
.circleci/config.yml Outdated Show resolved Hide resolved
.circleci/config.yml Outdated Show resolved Hide resolved
@robbkidd robbkidd merged commit 7b1c8f7 into main Oct 1, 2021
@robbkidd robbkidd deleted the mike/multi-arch-docker branch October 1, 2021 16:46
ghost pushed a commit to opsramp/tracing-proxy that referenced this pull request Jul 5, 2024
* remove now-unused docker orb

* update Go to 1.16
    + go.mod to 1.16
    + Circle cimg/go to 1.16

* new docker image build script
    + set BuildID ldflags
    + use ko to perform the multi-arch image build *and* publish

* new docker_publish job
    + runs the new image build script
    + setup_remote_docker so a docker service is available during the job
    + caches the ko installation
    + runs on all build workflow executions
        - if running on a tag, publishes to Docker Hub
        - all other builds, publishes to local docker registry

Co-authored-by: Robb Kidd <robbkidd@honeycomb.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Build and publish docker images for dual arm64/amd64 support Update to go 1.16.x
3 participants