Skip to content

fix(docker): bump dockerize to v0.15.2 - #4040

Closed
erikryanmoore wants to merge 1 commit into
temporalio:mainfrom
erikryanmoore:bump-dockerize-v0.15.2
Closed

erikryanmoore wants to merge 1 commit into
temporalio:mainfrom
erikryanmoore:bump-dockerize-v0.15.2

Conversation

@erikryanmoore

Copy link
Copy Markdown

Description & motivation

server/Dockerfile installs dockerize v0.10.1. That release pins golang.org/x/crypto v0.47.0 and golang.org/x/net v0.49.0. On temporalio/ui:2.56.0, Trivy 0.74.0 reports 16 high vulnerabilities with a fixed version in /usr/local/bin/dockerize. They are the only critical or high findings with a fix in the image: ui-server and the Alpine layer are clean.

dockerize v0.15.2 uses golang.org/x/crypto v0.57.0 and no longer depends on golang.org/x/net. Its go directive is 1.27.2, and the official golang images set GOTOOLCHAIN=local, so only the dockerize-builder stage moves to golang:1.27.2-alpine3.23. The server-builder and runtime stages are unchanged.

server/docker/README.md says dockerize templating is deprecated. If you prefer to remove dockerize now (#1703), that also clears these findings. This PR is the smallest change that keeps the legacy config-template path working.

Vulnerabilities in /usr/local/bin/dockerize that this removes:

Testing

How was this tested

  • Manual testing
  • E2E tests added
  • Unit tests added

I built the new dockerize-builder stage for linux/amd64 and copied its binary over /usr/local/bin/dockerize in temporalio/ui:2.56.0. Then:

  • trivy image --scanners vuln --ignore-unfixed --severity CRITICAL,HIGH --exit-code 1 <image> exits 0. On stock temporalio/ui:2.56.0 it exits 1 with the 16 findings above.
  • dockerize -template renders a {{ .Env.TEMPORAL_ADDRESS }} template with the value from the environment. A Sprig-style {{ env "X" | default "y" }} template renders the same output with v0.10.1 and v0.15.2.

I did not build the full image from a bare checkout, because server-builder embeds server/ui/assets from the frontend build.

Steps for others to test:

Build the image as your release pipeline does, then run trivy image --scanners vuln --ignore-unfixed --severity CRITICAL,HIGH --exit-code 1 <image> and docker run --rm --entrypoint dockerize <image> --help.

Checklists

Issue(s) closed

Addresses the dockerize findings in #3923.

Docs

Any docs updates needed?

No.

dockerize v0.10.1 pins golang.org/x/crypto v0.47.0 and golang.org/x/net
v0.49.0, so the UI image carries 16 high vulnerabilities in
/usr/local/bin/dockerize even though ui-server itself is clean. v0.15.2
moves to x/crypto v0.57.0 and drops x/net, but its go directive needs
Go 1.27, so only the dockerize-builder stage moves to
golang:1.27.2-alpine3.23. The server-builder stage is unchanged.
@erikryanmoore
erikryanmoore requested a review from a team as a code owner October 15, 2026 15:38
@vercel

vercel Bot commented Oct 15, 2026

Copy link
Copy Markdown

@erikryanmoore is attempting to deploy a commit to the Temporal Team on Vercel.

A member of the Team first needs to authorize it.

@CLAassistant

Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

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.

2 participants