-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Use multi-stage Dockerfiles for all images #3984
Copy link
Copy link
Closed
Labels
kind/cleanupCategorizes issue or PR as related to cleaning up code, process, or technical debt.Categorizes issue or PR as related to cleaning up code, process, or technical debt.lifecycle/frozenIndicates that an issue or PR should not be auto-closed due to staleness.Indicates that an issue or PR should not be auto-closed due to staleness.
Milestone
Metadata
Metadata
Assignees
Labels
kind/cleanupCategorizes issue or PR as related to cleaning up code, process, or technical debt.Categorizes issue or PR as related to cleaning up code, process, or technical debt.lifecycle/frozenIndicates that an issue or PR should not be auto-closed due to staleness.Indicates that an issue or PR should not be auto-closed due to staleness.
Type
Fields
Give feedbackNo fields configured for issues without a type.
The SDK build process currently has a pretty convoluted process for building docker images that involves several make targets and hack scripts.
I propose that we reduce this complexity by consolidating all image build steps into multi-stage Dockerfiles. With this change we will:
image-buildmake targets to remove the make dependencies that build go binaries in the local environmentimage-buildmake targets to call docker directly.hack/image-build-*scripts that are obsolete due to 3).hack/image/<image-name>. They were previously split betweenhack/image/andimages/This will give the project several benefits:
hack/imagereduces the overhead of remembering where various files are for each image build.There are some things I would consider out-of-scope for this:
maketo build the same binaries we always have.