GoogleCloudPlatform / GoogleCloudPlatform/microservices-demo
Use Docker base images to distroless or scratch
- Dominant language
- Go
- Stars
- 20.9k
- Forks
- 10.5k
- Avg merge
- 3d 4h
- Merged PRs (30d)
- 20
Description
## Background
- This repository uses a lot of `alpine`-based Docker base images (see [relevant search](https://github.com/search?l=&q=alpine+path%3A**%2FDockerfile+repo%3AGoogleCloudPlatform%2Fmicroservices-demo&type=code)).
- In light of what happened with Log4j in December 2021, we want to try to shrink the size of Docker base images being used:
- See Google-internal bug, [b/215516492](https://b.corp.google.com/issues/215516492).
- Smaller base images = less vulnerabilities.
- Relevant work from the past:
- #49
- #45
## Task
For each Dockerfile in this repository that uses a distro-ed base image (e.g., `alpine`):
1. Explore how we could remove the need for a distro.
2. If possible, remove it.
Contributor guide
Research direction
Start by inventorying every Dockerfile in the repository and identifying the Alpine or other distro-based base images they use. For each one, investigate whether the service can run without a distro, then verify that any replacements build and the repository's relevant deployment checks still pass.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, dockerfile
- Domain
- devops, infrastructure
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100