CNG gitlab-shell: remove excess & Ruby (v2)
What does this MR do?
Refactor the gitlab-shell
container:
- Base on gitlab-base instead of gitlab-ruby
- Use
make install
to install binaries - Use a
staging
image to chown/chgrp/chmod in order to reduce layers / size
Impact
image | tag | size (skopeo) | size (docker) |
---|---|---|---|
gitlab-shell | main | 347,346,674 | 937,613,647 |
gitlab-shell | shell-remove-ruby-v2 | 110,881,835 | 257,519,898 |
DIFF | 236,464,839 | 680,093,749 | |
gitlab-shell | main-ubi8 | 237,052,066 | 602,388,185 |
gitlab-shell | shell-remove-ruby-v2-ubi8 | 150,051,412 | 389,372,700 |
DIFF | 87,000,654 | 213,015,485 |
Two sizes are listed:
- Skopeo listed the total compresses layer sizes (storage / transit)
- Docker lists the total uncompressed layer sizes (consumption / usage)
Related issues
Primary:
Secondary:
- gitlab-org/charts/gitlab#3268
- gitlab-org/charts/gitlab#1257 (moved)
- gitlab-org/charts/gitlab#2697 (closed)
Checklist
See Definition of done.
For anything in this list which will not be completed, please provide a reason in the MR discussion
Required
-
Merge Request Title, and Description are up to date, accurate, and descriptive -
MR targeting the appropriate branch -
MR has a green pipeline on GitLab.com
Expected (please provide an explanation if not completing)
-
Test plan indicating conditions for success has been posted and passes -
Documentation created/updated -
Integration tests added to GitLab QA -
The impact any change in container size has should be evaluated
Edited by Jason Plum