slimtoolkit / slim

Slim(toolkit): Don't change anything in your container image and minify it by up to 30x (and for compiled languages even more) making it secure too! (free and open source)
Apache License 2.0
19.67k stars 737 forks source link

Minifying MicroShift image using docker-slim : Output Image is literally unusable #315

Open ksingh7 opened 2 years ago

ksingh7 commented 2 years ago

Expected Behavior

I was expecting to reduce the size of MicroShift image from 1.3GB to slightly lower.


Actual Behavior

However upon running docker-slimi the resultant image is 24MB but it is not usable. Docker-Slim removed every thing.


Steps to Reproduce the Problem

1. `docker pull quay.io/microshift/microshift-aio` 2. `docker-slim build --http-probe=false quay.io/microshift/microshift-aio` 3. `docker images` 4. The original imager is 1.3GB and the resultant image is 24MB , however the final image generated by docker-slim is not at all u sable. 5. To test you can launch microshift (which is a thin version of OpenShift ) ``` docker run -d --rm --name microshift --privileged -v microshift-data:/var/lib -p 6443:6443 quay.io/microshift/microshift-aio docker run -d --rm --name microshift --privileged -v microshift-data:/var/lib -p 6443:6443 quay.io/microshift/microshift-aio.slim docker exec -it microshift /bin/bash kubectl get nodes kubectl get pods -A ``` 6. If you get the output of the above 2 commands, it proves success --- Specifications ================= - Version: ``` cmd=version info=app version='darwin|Transformer|1.37.5|latest|latest' container=false dsimage=false cmd=version info=app outdated=false current=1.37.5 verdict='you have the latest version' cmd=version info=app location='/usr/local/bin' cmd=version info=host osname='other' cmd=version info=host osbuild=21E258 cmd=version info=host version=' Fri Mar 18 00:45:05 PDT 2022; root:xnu-8020.101.4~15/RELEASE_X86_64' cmd=version info=host release=21.4.0 cmd=version info=host sysname=darwin cmd=version info=docker name=docker-desktop cmd=version info=docker kernel_version=5.10.104-linuxkit cmd=version info=docker operating_system=Docker Desktop cmd=version info=docker ostype=linux cmd=version info=docker server_version=20.10.13 cmd=version info=docker architecture=x86_64 cmd=version info=dclient api_version=1.41 cmd=version info=dclient min_api_version=1.12 cmd=version info=dclient build_time=2022-03-10T14:06:05.000000000+00:00 cmd=version info=dclient git_commit=906f57f ``` - Platform: `macOS` - Logs ``` $ docker-slim build --http-probe=false quay.io/microshift/microshift-aio docker-slim: message='join the Gitter channel to ask questions or to share your feedback' info='https://gitter.im/docker-slim/community' docker-slim: message='join the Discord server to ask questions or to share your feedback' info='https://discord.gg/9tDyxYS' docker-slim: message='Github discussions' info='https://github.com/docker-slim/docker-slim/discussions' cmd=build info=exec message='changing continue-after from probe to nothing because http-probe is disabled' cmd=build info=exec message='changing continue-after to enter' cmd=build state=started cmd=build info=params keep.perms='true' tags='' target.type='image' target='quay.io/microshift/microshift-aio' continue.mode='enter' rt.as.user='true' cmd=build state=image.inspection.start cmd=build info=image size.human='1.3 GB' id='sha256:b7b2874ce63cf84ad469aa52ce8416d87f4105ba91666818f9e9cc25a943557e' size.bytes='1300787771' cmd=build info=image.stack index='0' name='quay.io/microshift/microshift-aio:latest' id='sha256:b7b2874ce63cf84ad469aa52ce8416d87f4105ba91666818f9e9cc25a943557e' cmd=build state=image.inspection.done cmd=build state=container.inspection.start cmd=build info=container status='created' name='dockerslimk_5910_20220419150335' id='b22e667c6dbcfce0810f4462b9af0b12ab2294f21fbe58d95f2b264fe27f6217' cmd=build info=container status='running' name='dockerslimk_5910_20220419150335' id='b22e667c6dbcfce0810f4462b9af0b12ab2294f21fbe58d95f2b264fe27f6217' cmd=build info=container message='obtained IP address' ip='172.17.0.2' cmd=build info=cmd.startmonitor status='sent' cmd=build info=event.startmonitor.done status='received' cmd=build info=container target.port.list='' target.port.info='' message='YOU CAN USE THESE PORTS TO INTERACT WITH THE CONTAINER' name='dockerslimk_5910_20220419150335' id='b22e667c6dbcfce0810f4462b9af0b12ab2294f21fbe58d95f2b264fe27f6217' cmd=build info=continue.after mode='enter' message='provide the expected input to allow the container inspector to continue its execution' cmd=build prompt='USER INPUT REQUIRED, PRESS WHEN YOU ARE DONE USING THE CONTAINER' cmd=build state=container.inspection.finishing cmd=build state=container.inspection.artifact.processing cmd=build state=container.inspection.done cmd=build state=building message="building optimized image" cmd=build state=completed cmd=build info=results status='MINIFIED' by='54.15X' size.original='1.3 GB' size.optimized='24 MB' cmd=build info=results image.name='quay.io/microshift/microshift-aio.slim' image.size='24 MB' has.data='true' cmd=build info=results artifacts.location='/tmp/docker-slim-state/.docker-slim-state/images/b7b2874ce63cf84ad469aa52ce8416d87f4105ba91666818f9e9cc25a943557e/artifacts' cmd=build info=results artifacts.report='creport.json' cmd=build info=results artifacts.dockerfile.reversed='Dockerfile.fat' cmd=build info=results artifacts.dockerfile.optimized='Dockerfile' cmd=build info=results artifacts.seccomp='quay.io-microshift-microshift-aio-seccomp.json' cmd=build info=results artifacts.apparmor='quay.io-microshift-microshift-aio-apparmor-profile' cmd=build state=done cmd=build info=commands message='use the xray command to learn more about the optimize image' cmd=build info=report file='slim.report.json' docker-slim: message='join the Gitter channel to ask questions or to share your feedback' info='https://gitter.im/docker-slim/community' docker-slim: message='join the Discord server to ask questions or to share your feedback' info='https://discord.gg/9tDyxYS' docker-slim: message='Github discussions' info='https://github.com/docker-slim/docker-slim/discussions' $ ```
ksingh7 commented 2 years ago

@kcq Hey Kyle, can you please provide some guidance on how can i reduce the size of a monstrous 1.3GB MicroShift image using your cool project docker-slim ?

ksingh7 commented 2 years ago
$ docker-slim xray --target quay.io/microshift/microshift-aio
docker-slim: message='join the Gitter channel to ask questions or to share your feedback' info='https://gitter.im/docker-slim/community'
docker-slim: message='join the Discord server to ask questions or to share your feedback' info='https://discord.gg/9tDyxYS'
docker-slim: message='Github discussions' info='https://github.com/docker-slim/docker-slim/discussions'
cmd=xray state=started
cmd=xray info=params target='quay.io/microshift/microshift-aio' add-image-manifest='false' add-image-config='false' rm-file-artifacts='false'
cmd=xray state=image.api.inspection.start
cmd=xray info=image id='sha256:b7b2874ce63cf84ad469aa52ce8416d87f4105ba91666818f9e9cc25a943557e' size.bytes='1300787771' size.human='1.3 GB'
cmd=xray info=image.stack index='0' name='quay.io/microshift/microshift-aio:latest' id='sha256:b7b2874ce63cf84ad469aa52ce8416d87f4105ba91666818f9e9cc25a943557e' instructions='19' message='see report file for details'
cmd=xray state=image.api.inspection.done
cmd=xray state=image.data.inspection.start
cmd=xray info=image.data.inspection.process.image.start
cmd=xray info=image.data.inspection.process.image.end
cmd=xray state=image.data.inspection.done
cmd=xray info=image.package.details
cmd=xray info=layers.count value='14'
cmd=xray info=image.stats.duplicates file_size.bytes='152406149' file_size.human='152 MB' file_total_size.bytes='431137865' file_total_size.human='431 MB' wasted.bytes='278731716' wasted.human='279 MB' file_count='2023' file_total_count='5699'
cmd=xray info=layer.start
cmd=xray info=layer index='0' id='08d23bd3e94486b2edcc2dd8a6bfe9f9719087e90320a44cfaba8c756172b7a1' path='08d23bd3e94486b2edcc2dd8a6bfe9f9719087e90320a44cfaba8c756172b7a1/layer.tar'
cmd=xray info=distro name='Red Hat Enterprise Linux' version='8.4' display='Red Hat Enterprise Linux 8.4 (Ootpa)'
cmd=xray info=change.instruction all='#no instruction info' index='0:0' type='NONE' snippet='#no instruction info'
cmd=xray info=layer.stats all_size.bytes='225392052' all_size.human='225 MB'
cmd=xray info=layer.stats object_count='11051'
cmd=xray info=layer.stats dir_count='1268'
cmd=xray info=layer.stats file_count='8461'
cmd=xray info=layer.stats link_count='1322'
cmd=xray info=layer.stats max_file_size.human='11 MB' max_file_size.bytes='10956800'
cmd=xray info=layer.stats added_size.human='225 MB' added_size.bytes='225392052'
cmd=xray info=layer.change.summary all='11051' deleted='0' modified='0' added='11051'
cmd=xray info=layer.objects.count value='11051'
cmd=xray info=layer.objects.top.start
A: mode=-rw-r--r-- size.human='11 MB' size.bytes=10956800 uid=0 gid=0 mtime='2021-10-26T12:59:41Z' H=[A:0/M:2,10,12] hash=16cf8ebccc26ce9d1f61a47a242b85e7b89c2dfe '/var/lib/rpm/Packages'
A: mode=-rw-r--r-- size.human='9.0 MB' size.bytes=9047901 uid=0 gid=0 mtime='2018-11-26T15:31:52Z' H=[A:0] hash=68af603cd455a46cf776fa2df38751dd43dc266d '/usr/share/cracklib/pw_dict.pwd'
A: mode=-rw-r--r-- size.human='6.9 MB' size.bytes=6949250 uid=0 gid=0 mtime='2021-03-05T16:50:01Z' H=[A:0] hash=f515db1b97f27aff3565cc0617921562c2006e79 '/usr/lib/locale/C.utf8/LC_COLLATE'
A: mode=-rw-r--r-- size.human='5.2 MB' size.bytes=5194744 uid=0 gid=0 mtime='2021-01-29T16:23:30Z' H=[A:0] hash=d805beb535b8046d2d972f212e83e93044605fed '/usr/share/misc/magic.mgc'
A: mode=-rw-r--r-- size.human='4.5 MB' size.bytes=4507744 uid=0 gid=0 mtime='2021-02-08T11:34:03Z' H=[A:0] hash=0a5165b7a1d3cc564fd397e3c932f860ff48c3bc '/usr/share/hwdata/oui.txt'
A: mode=-rwxr-xr-x size.human='3.3 MB' size.bytes=3289568 uid=0 gid=0 mtime='2021-09-12T08:42:40Z' H=[A:0] hash=1d01deeb5a4e9d5504a9d0c15c18a72f7b4b840d '/usr/lib64/libpython3.6m.so.1.0'
A: mode=-rwxr-xr-x size.human='3.2 MB' size.bytes=3167976 uid=0 gid=0 mtime='2021-03-05T17:03:03Z' H=[A:0] hash=5dd511ebea3476a03d710eff1bab8a72a47fdf71 '/usr/lib64/libc-2.28.so'
A: mode=-rwxr-xr-x size.human='3.1 MB' size.bytes=3071456 uid=0 gid=0 mtime='2021-03-25T16:49:50Z' H=[A:0] hash=25a6b029f5bbf9e622158877767469c7bcabc4a3 '/usr/lib64/libcrypto.so.1.1.1g'
A: mode=-rwxr-xr-x size.human='2.7 MB' size.bytes=2732896 uid=0 gid=0 mtime='2021-07-28T11:56:34Z' H=[A:0] hash=bc6915831ba756919998c32819a33a32d4777aca '/usr/lib/systemd/libsystemd-shared-239.so'
A: mode=-rwxr-xr-x size.human='2.2 MB' size.bytes=2191840 uid=0 gid=0 mtime='2021-03-05T17:03:04Z' H=[A:0] hash=288ac35414ee5ba5179a5915648d960756e852ae '/usr/lib64/libm-2.28.so'
A: mode=-rwxr-xr-x size.human='2.1 MB' size.bytes=2052344 uid=0 gid=0 mtime='2021-04-01T13:15:58Z' H=[A:0] hash=cec09c8b65fb0f18e2d4be0bc18a7e7e94959f6f '/usr/lib64/libgnutls.so.30.28.0'
A: mode=-rwxr-xr-x size.human='2.0 MB' size.bytes=1975976 uid=0 gid=0 mtime='2021-03-08T15:43:28Z' H=[A:0] hash=952a6e3dd0fecb13885bfb8e4365d58bd459f254 '/usr/lib64/libdnf.so.2'
A: mode=-rwxr-xr-x size.human='1.9 MB' size.bytes=1869272 uid=0 gid=0 mtime='2021-09-09T06:45:53Z' H=[A:0] hash=f23cd25f6633cdec692bc56c63d5af6619ff6b16 '/usr/lib64/libdb-5.3.so'
A: mode=-rw-r--r-- size.human='1.8 MB' size.bytes=1778669 uid=0 gid=0 mtime='2021-02-08T11:34:03Z' H=[A:0] hash=610d3aeb4b948ed5c826f1f5d34bc154476a5d1b '/usr/share/hwdata/iab.txt'
A: mode=-rwxr-xr-x size.human='1.8 MB' size.bytes=1770160 uid=0 gid=0 mtime='2021-07-26T13:46:03Z' H=[A:0] hash=fac862db2b3fba44cdb6afd4181c2de3077b624d '/usr/lib64/libgio-2.0.so.0.5600.4'
A: mode=-rwxr-xr-x size.human='1.8 MB' size.bytes=1760264 uid=0 gid=0 mtime='2018-08-17T20:47:18Z' H=[A:0] hash=490b62475dbf6b7139b6ca44f5967e51b808bec0 '/usr/lib64/libunistring.so.2.1.0'
A: mode=-rwxr-xr-x size.human='1.7 MB' size.bytes=1661376 uid=0 gid=0 mtime='2020-09-29T22:13:10Z' H=[A:0] hash=1c9f76b4852f5074fe8ac906ddbd9d5ddfc71724 '/usr/lib64/libstdc++.so.6.0.25'
A: mode=-rwxr-xr-x size.human='1.6 MB' size.bytes=1613888 uid=0 gid=0 mtime='2021-07-28T11:56:34Z' H=[A:0] hash=1ec496b41e87d509ac08c09593b1b57c4a7891cf '/usr/bin/systemd-analyze'
A: mode=-rwxr-xr-x size.human='1.6 MB' size.bytes=1589000 uid=0 gid=0 mtime='2021-07-28T11:56:34Z' H=[A:0] hash=fc0639133e2c8db3a17fe5ee17eb87844cfd084b '/usr/lib/systemd/systemd'
A: mode=-rwxr-xr-x size.human='1.5 MB' size.bytes=1503528 uid=0 gid=0 mtime='2021-05-19T08:14:20Z' H=[A:0] hash=502c780b80c73527b6820eed909774ea1f94db74 '/usr/lib64/libxml2.so.2.9.7'
cmd=xray info=layer.objects.top.end
cmd=xray info=layer.end
cmd=xray info=layer.start
cmd=xray info=layer index='1' id='439687f35c5c0b8663255ec258b79c72d8284609d18254eb9af600ae8cc993d9' path='439687f35c5c0b8663255ec258b79c72d8284609d18254eb9af600ae8cc993d9/layer.tar'
cmd=xray info=change.instruction type='NONE' snippet='#no instruction info' all='#no instruction info' index='0:1'
cmd=xray info=layer.stats all_size.human='4.7 kB' all_size.bytes='4719'
cmd=xray info=layer.stats object_count='18'
cmd=xray info=layer.stats dir_count='11'
cmd=xray info=layer.stats file_count='7'
cmd=xray info=layer.stats max_file_size.human='2.4 kB' max_file_size.bytes='2429'
cmd=xray info=layer.stats deleted_count='1'
cmd=xray info=layer.stats deleted_file_count='4'
cmd=xray info=layer.stats added_size.human='2.3 kB' added_size.bytes='2290'
cmd=xray info=layer.stats modified_size.human='2.4 kB' modified_size.bytes='2429'
cmd=xray info=layer.change.summary deleted='4' modified='8' added='6' all='18'
cmd=xray info=layer.objects.count value='18'
cmd=xray info=layer.objects.top.start
M: mode=-rw-r--r-- size.human='2.4 kB' size.bytes=2429 uid=0 gid=0 mtime='2021-10-26T12:59:41Z' H=[A:0/M:1,2] hash=6d92628dfa015e050c6c5eff37d4d714d3e3c462 '/etc/yum.repos.d/ubi.repo'
A: mode=-rw-r--r-- size.human='1.9 kB' size.bytes=1922 uid=0 gid=0 mtime='2021-10-26T13:03:31Z' H=[A:1] hash=35874d5f25456fe52979ea948ec298665868fa0e '/root/buildinfo/Dockerfile-ubi8-8.4-213'
A: mode=-rw-r--r-- size.human='368 B' size.bytes=368 uid=0 gid=0 mtime='2021-10-26T13:03:31Z' H=[A:1] hash=dcfd9fb7abbe6ae87dc68f7f123a74f46745569b '/root/buildinfo/content_manifests/ubi8-container-8.4-213.json'
A: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2021-10-26T13:03:36Z' H=[A:1/M:2] '/root/buildinfo'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2021-10-26T13:03:36Z' H=[A:0/M:1,2,10,12] '/var/log'
D: mode=-rwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='1970-01-01T00:00:00Z' H=[] '/var/log/rhsm/*'
M: mode=dr-xr-x--- size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2021-10-26T13:03:36Z' H=[A:0/M:1,2] '/root'
A: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2021-10-26T13:03:36Z' H=[A:1/M:2] '/root/buildinfo/content_manifests'
D: mode=-rwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='1970-01-01T00:00:00Z' H=[] '/root/buildinfo/*'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2021-10-26T12:59:05Z' H=[A:0/M:1,2,10,12] '/var'
M: mode=dtrwxrwxrwx size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2021-10-26T13:03:39Z' H=[A:0/M:1,2,10,12] '/tmp'
A: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2021-10-26T13:03:36Z' H=[A:1/M:2,10,12] '/var/log/rhsm'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2021-10-26T13:03:39Z' H=[A:0/M:1,2,9,10] '/etc/yum.repos.d'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2021-10-26T13:03:32Z' H=[A:0/M:1,2,7,10,12] '/run'
A: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2021-10-26T13:03:32Z' H=[A:1] '/run/secrets'
D: mode=-rwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='1970-01-01T00:00:00Z' H=[] '/run/secrets/*'
D: mode=-rw-r--r-- size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='1970-01-01T00:00:00Z' H=[A:0/D:1] '/var/log/anaconda'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2021-10-26T13:03:38Z' H=[A:0/M:1,2,5,6,9,10,11,12,13] '/etc'
cmd=xray info=layer.objects.top.end
cmd=xray info=layer.end
cmd=xray info=layer.start
cmd=xray info=layer id='cac7b3694cb4fec0d06653f946f6e32a6a8fe37dd7b023fb1a7f993105a106b8' path='cac7b3694cb4fec0d06653f946f6e32a6a8fe37dd7b023fb1a7f993105a106b8/layer.tar' index='2'
cmd=xray info=change.instruction snippet='#no instruction info' all='#no instruction info' index='0:2' type='NONE'
cmd=xray info=other.instructions count='3'
cmd=xray info=other.instruction type='ARG' snippet='ARG HOST=rhel8' all='ARG HOST=rhel8' pos='0' index='0:3'
cmd=xray info=other.instruction pos='1' index='0:4' type='ARG' snippet='ARG ARCH=amd64 HOST=rhel8' all='ARG ARCH=amd64 HOST=rhel8'
cmd=xray info=other.instruction index='0:5' type='ENV' snippet='ENV BUILD_PATH=packaging/images/microshift-a...' all='ENV BUILD_PATH=packaging/images/microshift-aio' pos='2'
cmd=xray info=layer.stats all_size.human='18 MB' all_size.bytes='17918944'
cmd=xray info=layer.stats object_count='191'
cmd=xray info=layer.stats dir_count='67'
cmd=xray info=layer.stats file_count='100'
cmd=xray info=layer.stats link_count='24'
cmd=xray info=layer.stats max_file_size.human='11 MB' max_file_size.bytes='10989568'
cmd=xray info=layer.stats deleted_file_count='7'
cmd=xray info=layer.stats added_size.human='3.8 MB' added_size.bytes='3825876'
cmd=xray info=layer.stats modified_size.human='14 MB' modified_size.bytes='14093068'
cmd=xray info=layer.change.summary modified='74' added='110' all='191' deleted='7'
cmd=xray info=layer.objects.count value='191'
cmd=xray info=layer.objects.top.start
M: mode=-rw-r--r-- size.human='11 MB' size.bytes=10989568 uid=0 gid=0 mtime='2021-10-26T17:31:08Z' H=[A:0/M:2,10,12] hash=b4c6a70a8aa7533d385e4964f0163531064d3f5f '/var/lib/rpm/Packages'
A: mode=-rw-r--r-- size.human='2.7 MB' size.bytes=2662400 uid=0 gid=0 mtime='2021-10-26T17:31:08Z' H=[A:2/M:10,12] hash=99f49b73dc5d97ad994947d854feb98bdd568e2e '/var/cache/dnf/packages.db'
M: mode=-rw-r--r-- size.human='1.3 MB' size.bytes=1318912 uid=0 gid=0 mtime='2021-10-26T17:31:11Z' H=[A:0/M:2,10,12] hash=2a787434b0c665e1a9766c59440b532baec7bac3 '/var/lib/rpm/__db.003'
M: mode=-rw-r--r-- size.human='819 kB' size.bytes=819200 uid=0 gid=0 mtime='2021-10-26T17:31:08Z' H=[A:0/M:2,10,12] hash=6c26f4b27129f7637920ca904529aa5d26d47405 '/var/lib/rpm/Basenames'
M: mode=-rw-r--r-- size.human='287 kB' size.bytes=286720 uid=0 gid=0 mtime='2021-10-26T17:31:11Z' H=[A:0/M:2,10,12] hash=d1e2124359fbae5f100c72a392efe44eeed82603 '/var/lib/rpm/__db.001'
M: mode=-rw-r--r-- size.human='238 kB' size.bytes=237568 uid=0 gid=0 mtime='2021-10-26T17:31:08Z' H=[A:0/M:2,10,12] hash=18663c7b7e2835f018be65bdcf463c8c69a2f208 '/var/lib/rpm/Dirnames'
A: mode=-rwxr-xr-x size.human='138 kB' size.bytes=138000 uid=0 gid=0 mtime='2020-12-01T16:25:22Z' H=[A:2] hash=1adb3a58188adc4c77c79b341a1ecb2713d4a66a '/usr/bin/ps'
A: mode=-rwxr-xr-x size.human='125 kB' size.bytes=124704 uid=0 gid=0 mtime='2020-12-01T16:25:22Z' H=[A:2] hash=6f5def25b76d2c45a1ab9ef467671ce1a441fe03 '/usr/bin/top'
A: mode=-rw-r--r-- size.human='119 kB' size.bytes=118784 uid=0 gid=0 mtime='2021-10-26T17:31:11Z' H=[A:2/M:10,12] hash=6fbd0ea150c4905a664e508fd7d0a3760d0c5fd5 '/var/lib/dnf/history.sqlite'
M: mode=-rw-r--r-- size.human='98 kB' size.bytes=98304 uid=0 gid=0 mtime='2021-10-26T17:31:08Z' H=[A:0/M:2,10,12] hash=662d87e0b1df51a1e086bfc4893aa092f45d3dbe '/var/lib/rpm/Providename'
M: mode=-rw-r--r-- size.human='90 kB' size.bytes=90112 uid=0 gid=0 mtime='2021-10-26T17:31:11Z' H=[A:0/M:2,10,12] hash=21031f80f355fca6c6eec7ecee73ed29a52251f6 '/var/lib/rpm/__db.002'
M: mode=-rw-r--r-- size.human='90 kB' size.bytes=90112 uid=0 gid=0 mtime='2021-10-26T17:31:08Z' H=[A:0/M:2,10,12] hash=7bc782efe8275eaf9856e07e7a855b03e5cdb680 '/var/lib/rpm/Requirename'
A: mode=-rwxr-xr-x size.human='83 kB' size.bytes=83288 uid=0 gid=0 mtime='2020-12-01T16:25:22Z' H=[A:2] hash=445860659cc0b4d6f38490de319b2ede09556616 '/usr/lib64/libprocps.so.7.1.0'
A: mode=-rw-r--r-- size.human='58 kB' size.bytes=57712 uid=0 gid=0 mtime='2021-10-26T17:31:08Z' H=[A:2/M:10,12] hash=f67321f0fcc6e7ccb55b777f22de1b6799fd43ca '/var/lib/dnf/history.sqlite-wal'
A: mode=-rwxr-xr-x size.human='38 kB' size.bytes=37720 uid=0 gid=0 mtime='2020-12-01T16:25:22Z' H=[A:2] hash=d7c400452716a36e938c07510839b11e1e072902 '/usr/bin/vmstat'
A: mode=-rwxr-xr-x size.human='34 kB' size.bytes=33576 uid=0 gid=0 mtime='2020-12-01T16:25:22Z' H=[A:2] hash=50d2874ca7d4fba568d5e258313fb8811eb15a27 '/usr/bin/pmap'
A: mode=-rw-r--r-- size.human='33 kB' size.bytes=32768 uid=0 gid=0 mtime='2021-10-26T17:31:08Z' H=[A:2/M:10,12] hash=5d200c638989a655dc3967f33f539e4032f77c98 '/var/lib/dnf/history.sqlite-shm'
A: mode=-rw-r--r-- size.human='30 kB' size.bytes=30189 uid=0 gid=0 mtime='2020-12-01T16:25:22Z' H=[A:2] hash=c293736f517cf0d2e6ea83baf35fe5466391806a '/usr/share/man/man1/top.1.gz'
A: mode=-rwxr-xr-x size.human='30 kB' size.bytes=29920 uid=0 gid=0 mtime='2020-12-01T16:25:22Z' H=[A:2] hash=98e244e1795c27024901344736a5c90a412ac8e2 '/usr/bin/watch'
A: mode=-rwxr-xr-x size.human='30 kB' size.bytes=29568 uid=0 gid=0 mtime='2020-12-01T16:25:22Z' H=[A:2] hash=5d4f611005f3bb180ca7c53e2bae746065c565aa '/usr/sbin/sysctl'
cmd=xray info=layer.objects.top.end
cmd=xray info=layer.end
cmd=xray info=layer.start
cmd=xray info=layer id='c29156e95d40cdebee6b04a5687fbdbba3209a973a700f7722ed82b190738bbe' path='c29156e95d40cdebee6b04a5687fbdbba3209a973a700f7722ed82b190738bbe/layer.tar' index='3'
cmd=xray info=change.instruction index='0:6' type='COPY' snippet='COPY file:5c3869c6e62e3341dd9fc8f16691ca859e...' all='COPY file:5c3869c6e62e3341dd9fc8f16691ca859edb20be51d69326bacbe8e4176dcdf8 /usr/local/bin/microshift'
cmd=xray info=layer.stats all_size.human='161 MB' all_size.bytes='161249520'
cmd=xray info=layer.stats object_count='4'
cmd=xray info=layer.stats dir_count='3'
cmd=xray info=layer.stats file_count='1'
cmd=xray info=layer.stats max_file_size.bytes='161249520' max_file_size.human='161 MB'
cmd=xray info=layer.stats added_size.human='161 MB' added_size.bytes='161249520'
cmd=xray info=layer.change.summary deleted='0' modified='3' added='1' all='4'
cmd=xray info=layer.objects.count value='4'
cmd=xray info=layer.objects.top.start
A: mode=-rw-r--r-- size.human='161 MB' size.bytes=161249520 uid=0 gid=0 mtime='2022-03-11T13:29:06Z' H=[A:3/M:8] hash=2b73f4f7a091b62c16fcd82742bd834ac6d941dd '/usr/local/bin/microshift'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2022-03-11T13:29:16Z' H=[A:0/M:3,7,8] '/usr/local/bin'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2021-10-26T12:58:51Z' H=[A:0/M:3,7,8] '/usr/local'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2021-10-26T12:58:51Z' H=[A:0/M:2,3,4,7,8,10,12] '/usr'
cmd=xray info=layer.objects.top.end
cmd=xray info=layer.end
cmd=xray info=layer.start
cmd=xray info=layer index='4' id='81198c7fc47a82e45a3e55bbb79417e731435185d88406ee23aee0f961775150' path='81198c7fc47a82e45a3e55bbb79417e731435185d88406ee23aee0f961775150/layer.tar'
cmd=xray info=change.instruction index='0:7' type='COPY' snippet='COPY file:bd3bf90101398a9c8ae359befeb7c306aa...' all='COPY file:bd3bf90101398a9c8ae359befeb7c306aaf4ca173872160f192202393cea2168 /usr/lib/systemd/system/microshift.service'
cmd=xray info=layer.stats all_size.human='196 B' all_size.bytes='196'
cmd=xray info=layer.stats object_count='5'
cmd=xray info=layer.stats dir_count='4'
cmd=xray info=layer.stats file_count='1'
cmd=xray info=layer.stats max_file_size.human='196 B' max_file_size.bytes='196'
cmd=xray info=layer.stats added_size.human='196 B' added_size.bytes='196'
cmd=xray info=layer.change.summary deleted='0' modified='4' added='1' all='5'
cmd=xray info=layer.objects.count value='5'
cmd=xray info=layer.objects.top.start
A: mode=-rw-r--r-- size.human='196 B' size.bytes=196 uid=0 gid=0 mtime='2022-03-11T12:47:50Z' H=[A:4] hash=f8aa20e1703f4b373fb16d670cac17ca7c3e0eac '/usr/lib/systemd/system/microshift.service'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2021-10-26T12:59:22Z' H=[A:0/M:4,10] '/usr/lib/systemd'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2022-03-11T13:29:19Z' H=[A:0/M:4,10] '/usr/lib/systemd/system'
M: mode=dr-xr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2021-10-26T12:59:22Z' H=[A:0/M:2,4,10,12] '/usr/lib'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2021-10-26T12:58:51Z' H=[A:0/M:2,3,4,7,8,10,12] '/usr'
cmd=xray info=layer.objects.top.end
cmd=xray info=layer.end
cmd=xray info=layer.start
cmd=xray info=layer index='5' id='165945d93666fdafd560493ff4947aed382b315de048f2d13ec02d6b799cb7dd' path='165945d93666fdafd560493ff4947aed382b315de048f2d13ec02d6b799cb7dd/layer.tar'
cmd=xray info=change.instruction index='0:8' type='COPY' snippet='COPY file:d16fc054cfefdab3ae31df16833456cc52...' all='COPY file:d16fc054cfefdab3ae31df16833456cc52d06d299956245f785feddd4de9543b /etc/systemd/system.conf.d/kubelet-cgroups.conf'
cmd=xray info=layer.stats all_size.human='92 B' all_size.bytes='92'
cmd=xray info=layer.stats object_count='4'
cmd=xray info=layer.stats dir_count='3'
cmd=xray info=layer.stats file_count='1'
cmd=xray info=layer.stats max_file_size.human='92 B' max_file_size.bytes='92'
cmd=xray info=layer.stats added_size.human='92 B' added_size.bytes='92'
cmd=xray info=layer.change.summary deleted='0' modified='2' added='2' all='4'
cmd=xray info=layer.objects.count value='4'
cmd=xray info=layer.objects.top.start
A: mode=-rw-r--r-- size.human='92 B' size.bytes=92 uid=0 gid=0 mtime='2022-03-11T12:47:50Z' H=[A:5] hash=82fd131e5a3d5088e24e0a7299b979ef65a69399 '/etc/systemd/system.conf.d/kubelet-cgroups.conf'
A: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2022-03-11T13:29:19Z' H=[A:5] '/etc/systemd/system.conf.d'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2022-03-11T13:29:19Z' H=[A:0/M:2,5,10,11] '/etc/systemd'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2021-10-26T17:31:15Z' H=[A:0/M:1,2,5,6,9,10,11,12,13] '/etc'
cmd=xray info=layer.objects.top.end
cmd=xray info=layer.end
cmd=xray info=layer.start
cmd=xray info=layer index='6' id='ff4aa8524c0079ef2f2c9591596680a58ee55a4b01e9d07741b336fa6a55748d' path='ff4aa8524c0079ef2f2c9591596680a58ee55a4b01e9d07741b336fa6a55748d/layer.tar'
cmd=xray info=change.instruction index='0:9' type='COPY' snippet='COPY file:47b1d66fa456e4430d82ab8007c4d1dbd8...' all='COPY file:47b1d66fa456e4430d82ab8007c4d1dbd8605ea1949ffe5e514f9848c5ad31a7 /etc/crio/crio.conf.d/microshift.conf'
cmd=xray info=layer.stats all_size.human='338 B' all_size.bytes='338'
cmd=xray info=layer.stats object_count='4'
cmd=xray info=layer.stats dir_count='3'
cmd=xray info=layer.stats file_count='1'
cmd=xray info=layer.stats max_file_size.human='338 B' max_file_size.bytes='338'
cmd=xray info=layer.stats added_size.human='338 B' added_size.bytes='338'
cmd=xray info=layer.change.summary modified='1' added='3' all='4' deleted='0'
cmd=xray info=layer.objects.count value='4'
cmd=xray info=layer.objects.top.start
A: mode=-rw-r--r-- size.human='338 B' size.bytes=338 uid=0 gid=0 mtime='2022-03-11T12:47:50Z' H=[A:6] hash=c766828fb55f33c28a5f9f0778c4a7fb578ce1ed '/etc/crio/crio.conf.d/microshift.conf'
A: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2022-03-11T13:29:20Z' H=[A:6] '/etc/crio/crio.conf.d'
A: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2022-03-11T13:29:20Z' H=[A:6/M:10,11] '/etc/crio'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2022-03-11T13:29:20Z' H=[A:0/M:1,2,5,6,9,10,11,12,13] '/etc'
cmd=xray info=layer.objects.top.end
cmd=xray info=layer.end
cmd=xray info=layer.start
cmd=xray info=layer path='a9ddf7061d177d2d07580c80f698173a05d4e486cd529f0ff961ae6462d73e53/layer.tar' index='7' id='a9ddf7061d177d2d07580c80f698173a05d4e486cd529f0ff961ae6462d73e53'
cmd=xray info=change.instruction index='0:10' type='RUN' snippet='RUN export OCP_VERSION=4.9.11 && curl -o oc....' all='RUN export OCP_VERSION=4.9.11 && curl -o oc.tar.gz https://mirror2.openshift.com/pub/openshift-v4/$ARCH/clients/ocp/$OCP_VERSION/openshift-client-linux-$OCP_VERSION.tar.gz && tar -xzvf oc.tar.gz && rm oc.tar.gz && install -t /usr/local/bin {kubectl,oc}'
cmd=xray info=layer.stats all_size.human='369 MB' all_size.bytes='368550642'
cmd=xray info=layer.stats object_count='10'
cmd=xray info=layer.stats dir_count='4'
cmd=xray info=layer.stats file_count='5'
cmd=xray info=layer.stats link_count='1'
cmd=xray info=layer.stats max_file_size.bytes='122849896' max_file_size.human='123 MB'
cmd=xray info=layer.stats added_size.human='369 MB' added_size.bytes='368550642'
cmd=xray info=layer.change.summary deleted='0' modified='4' added='6' all='10'
cmd=xray info=layer.objects.count value='10'
cmd=xray info=layer.objects.top.start
A: mode=-rwxr-xr-x size.human='123 MB' size.bytes=122849896 uid=0 gid=0 mtime='2021-11-15T14:55:12Z' H=[A:7] hash=0f1be5e013c6b8b139a18d82879e263a64ddbf31 '/kubectl'
A: mode=-rwxr-xr-x size.human='123 MB' size.bytes=122849896 uid=0 gid=0 mtime='2022-03-11T13:29:23Z' H=[A:7] hash=0f1be5e013c6b8b139a18d82879e263a64ddbf31 '/usr/local/bin/kubectl'
A: mode=-rwxr-xr-x size.human='123 MB' size.bytes=122849896 uid=0 gid=0 mtime='2022-03-11T13:29:23Z' H=[A:7] hash=0f1be5e013c6b8b139a18d82879e263a64ddbf31 '/usr/local/bin/oc'
A: mode=-rw-r--r-- size.human='954 B' size.bytes=954 uid=0 gid=0 mtime='2021-11-15T14:55:12Z' H=[A:7] hash=f7313818f652697b2d86d199797d3b6facaaa399 '/README.md'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2021-10-26T12:58:51Z' H=[A:0/M:2,3,4,7,8,10,12] '/usr'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2021-10-26T12:58:51Z' H=[A:0/M:3,7,8] '/usr/local'
A: mode=-rwx------ size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2022-03-11T13:29:20Z' H=[A:7] hash=da39a3ee5e6b4b0d3255bfef95601890afd80709 '/run/.containerenv'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2022-03-11T13:29:23Z' H=[A:0/M:3,7,8] '/usr/local/bin'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2022-03-11T13:29:20Z' H=[A:0/M:1,2,7,10,12] '/run'
A: mode=-rwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2021-11-15T14:55:12Z' H=[A:7] '/oc' -> 'kubectl'
cmd=xray info=layer.objects.top.end
cmd=xray info=layer.end
cmd=xray info=layer.start
cmd=xray info=layer id='bc3bb5901121a80b32fed807501222ac2c4c4fcf825d62fca4e6a6b69966ee33' path='bc3bb5901121a80b32fed807501222ac2c4c4fcf825d62fca4e6a6b69966ee33/layer.tar' index='8'
cmd=xray info=change.instruction index='0:11' type='RUN' snippet='RUN chmod 755 /usr/local/bin/microshift' all='RUN chmod 755 /usr/local/bin/microshift'
cmd=xray info=layer.stats all_size.human='161 MB' all_size.bytes='161249520'
cmd=xray info=layer.stats object_count='4'
cmd=xray info=layer.stats dir_count='3'
cmd=xray info=layer.stats file_count='1'
cmd=xray info=layer.stats max_file_size.human='161 MB' max_file_size.bytes='161249520'
cmd=xray info=layer.stats modified_size.human='161 MB' modified_size.bytes='161249520'
cmd=xray info=layer.change.summary deleted='0' modified='4' added='0' all='4'
cmd=xray info=layer.objects.count value='4'
cmd=xray info=layer.objects.top.start
M: mode=-rwxr-xr-x size.human='161 MB' size.bytes=161249520 uid=0 gid=0 mtime='2022-03-11T13:29:06Z' H=[A:3/M:8] hash=2b73f4f7a091b62c16fcd82742bd834ac6d941dd '/usr/local/bin/microshift'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2022-03-11T13:29:23Z' H=[A:0/M:3,7,8] '/usr/local/bin'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2021-10-26T12:58:51Z' H=[A:0/M:3,7,8] '/usr/local'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2021-10-26T12:58:51Z' H=[A:0/M:2,3,4,7,8,10,12] '/usr'
cmd=xray info=layer.objects.top.end
cmd=xray info=layer.end
cmd=xray info=layer.start
cmd=xray info=layer index='9' id='dff514cc2d183d60ac16f25ba3898d4e1442fbae8f3a74dabd05ed259ed60056' path='dff514cc2d183d60ac16f25ba3898d4e1442fbae8f3a74dabd05ed259ed60056/layer.tar'
cmd=xray info=change.instruction index='0:12' type='RUN' snippet='RUN export VERSION=1.21 && export OS=CentOS_...' all='RUN export VERSION=1.21 && export OS=CentOS_8_Stream && curl -L -o /etc/yum.repos.d/devel:kubic:libcontainers:stable.repo https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/$OS/devel:kubic:libcontainers:stable.repo && curl -L -o /etc/yum.repos.d/devel:kubic:libcontainers:stable:cri-o:$VERSION.repo https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable:/cri-o:/$VERSION/$OS/devel:kubic:libcontainers:stable:cri-o:$VERSION.repo'
cmd=xray info=layer.stats all_size.human='782 B' all_size.bytes='782'
cmd=xray info=layer.stats object_count='4'
cmd=xray info=layer.stats dir_count='2'
cmd=xray info=layer.stats file_count='2'
cmd=xray info=layer.stats max_file_size.human='402 B' max_file_size.bytes='402'
cmd=xray info=layer.stats added_size.human='782 B' added_size.bytes='782'
cmd=xray info=layer.change.summary deleted='0' modified='2' added='2' all='4'
cmd=xray info=layer.objects.count value='4'
cmd=xray info=layer.objects.top.start
A: mode=-rw-r--r-- size.human='402 B' size.bytes=402 uid=0 gid=0 mtime='2022-03-11T13:29:34Z' H=[A:9] hash=e1d42a559068e3da6f7495ae6c75a190ab452b32 '/etc/yum.repos.d/devel:kubic:libcontainers:stable:cri-o:1.21.repo'
A: mode=-rw-r--r-- size.human='380 B' size.bytes=380 uid=0 gid=0 mtime='2022-03-11T13:29:33Z' H=[A:9] hash=d4eb622001114b03652efebbb586081d796f711e '/etc/yum.repos.d/devel:kubic:libcontainers:stable.repo'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2022-03-11T13:29:34Z' H=[A:0/M:1,2,9,10] '/etc/yum.repos.d'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2022-03-11T13:29:20Z' H=[A:0/M:1,2,5,6,9,10,11,12,13] '/etc'
cmd=xray info=layer.objects.top.end
cmd=xray info=layer.end
cmd=xray info=layer.start
cmd=xray info=layer index='10' id='6c01a80e5a12ebd5ae30b804424f53bea0bf9acaff7e8e1bfebcc695be04f992' path='6c01a80e5a12ebd5ae30b804424f53bea0bf9acaff7e8e1bfebcc695be04f992/layer.tar'
cmd=xray info=change.instruction index='0:13' type='RUN' snippet='RUN dnf install -y cri-o cri-tools iproute p...' all='RUN dnf install -y cri-o cri-tools iproute procps-ng && dnf clean all'
cmd=xray info=layer.stats all_size.human='341 MB' all_size.bytes='341372910'
cmd=xray info=layer.stats object_count='4703'
cmd=xray info=layer.stats dir_count='1216'
cmd=xray info=layer.stats file_count='3219'
cmd=xray info=layer.stats link_count='268'
cmd=xray info=layer.stats max_file_size.human='64 MB' max_file_size.bytes='63793568'
cmd=xray info=layer.stats deleted_count='15'
cmd=xray info=layer.stats deleted_file_count='15'
cmd=xray info=layer.stats added_size.human='317 MB' added_size.bytes='316790750'
cmd=xray info=layer.stats modified_size.human='25 MB' modified_size.bytes='24582160'
cmd=xray info=layer.change.summary modified='391' added='4297' all='4703' deleted='15'
cmd=xray info=layer.objects.count value='4703'
cmd=xray info=layer.objects.top.start
A: mode=-rwxr-xr-x size.human='64 MB' size.bytes=63793568 uid=0 gid=0 mtime='2022-03-10T21:26:00Z' H=[A:10] hash=7333787c399a74ea5c80475c15f9cc3cd8597f1e '/usr/bin/crio'
A: mode=-rwxr-xr-x size.human='56 MB' size.bytes=56418264 uid=0 gid=0 mtime='2022-03-10T21:26:00Z' H=[A:10] hash=5f834dada3cb2fadc3b888eea4b7571c21d994b8 '/usr/bin/crio-status'
A: mode=-rwxr-xr-x size.human='48 MB' size.bytes=47993056 uid=0 gid=0 mtime='2022-03-09T09:03:37Z' H=[A:10] hash=bbc32e74f441c773479824fc8f7b92b579d8580f '/usr/bin/crictl'
M: mode=-rw-r--r-- size.human='14 MB' size.bytes=14528512 uid=0 gid=0 mtime='2022-03-11T13:30:41Z' H=[A:0/M:2,10,12] hash=bc5e1dc0f47dccf1e7fff2e0b435e5870bb06627 '/var/lib/rpm/Packages'
A: mode=-rwxr-xr-x size.human='12 MB' size.bytes=11893976 uid=0 gid=0 mtime='2021-12-06T13:59:27Z' H=[A:10] hash=60680004be20385b4fbd9d4d6642f4f773d4e4bd '/usr/bin/runc'
A: mode=-rwxr-xr-x size.human='9.2 MB' size.bytes=9157840 uid=0 gid=0 mtime='2021-11-23T12:35:15Z' H=[A:10] hash=96a9891e0c2ccd07af4cfc29c7ca6a5ff9b17c24 '/usr/libexec/cni/dhcp'
A: mode=-rw------- size.human='8.8 MB' size.bytes=8820141 uid=0 gid=0 mtime='2022-03-11T13:30:37Z' H=[A:10] hash=857a19b467cf1830d4973e48f9c3b854e145cb55 '/var/lib/selinux/targeted/active/policy.linked'
A: mode=-rw------- size.human='8.8 MB' size.bytes=8820141 uid=0 gid=0 mtime='2022-03-11T13:30:37Z' H=[A:10] hash=9744b8bf1582379c2ead43efe525c618585c55bb '/var/lib/selinux/targeted/active/policy.kern'
A: mode=-rw-r--r-- size.human='8.8 MB' size.bytes=8820141 uid=0 gid=0 mtime='2022-03-11T13:30:38Z' H=[A:10] hash=9744b8bf1582379c2ead43efe525c618585c55bb '/etc/selinux/targeted/policy/policy.31'
A: mode=-rw------- size.human='8.6 MB' size.bytes=8570721 uid=0 gid=0 mtime='2021-12-10T15:13:53Z' H=[A:10] hash=2f0f40612a4a5f2c3147f180baaa75340131116a '/usr/share/selinux/targeted/default/active/policy.linked'
A: mode=-rw------- size.human='8.6 MB' size.bytes=8570721 uid=0 gid=0 mtime='2021-12-10T15:13:53Z' H=[A:10] hash=2f0f40612a4a5f2c3147f180baaa75340131116a '/usr/share/selinux/targeted/default/active/policy.kern'
A: mode=-rwxr-xr-x size.human='4.2 MB' size.bytes=4203608 uid=0 gid=0 mtime='2021-11-23T12:35:14Z' H=[A:10] hash=d1be831b709b3a9b43e7e7469e4aea78f702e856 '/usr/libexec/cni/firewall'
A: mode=-rwxr-xr-x size.human='4.0 MB' size.bytes=4020696 uid=0 gid=0 mtime='2021-11-23T12:35:14Z' H=[A:10] hash=f81fdc8b48743b840391ea72e6646b33431a3b9d '/usr/libexec/cni/bridge'
A: mode=-rwxr-xr-x size.human='4.0 MB' size.bytes=3963056 uid=0 gid=0 mtime='2021-11-23T12:35:14Z' H=[A:10] hash=3d4cac1be879ff0b81c692b4eb6284a6e2356054 '/usr/libexec/cni/ptp'
A: mode=-rwxr-xr-x size.human='3.8 MB' size.bytes=3837872 uid=0 gid=0 mtime='2021-11-23T12:35:14Z' H=[A:10] hash=49d1c995d6acddd25d50528e90c545ccd4de83f5 '/usr/libexec/cni/macvlan'
A: mode=-rwxr-xr-x size.human='3.8 MB' size.bytes=3771600 uid=0 gid=0 mtime='2021-11-23T12:35:15Z' H=[A:10] hash=5f76f4e040e791341d9370230ce3e8751e3725f9 '/usr/libexec/cni/ipvlan'
A: mode=-rwxr-xr-x size.human='3.8 MB' size.bytes=3767456 uid=0 gid=0 mtime='2021-11-23T12:35:14Z' H=[A:10] hash=f9bd98a7892d0df20a8e86973b2f30483e008a91 '/usr/libexec/cni/vlan'
A: mode=-rwxr-xr-x size.human='3.7 MB' size.bytes=3669344 uid=0 gid=0 mtime='2021-11-23T12:35:14Z' H=[A:10] hash=337ceaf00541f2c887da00d681610d6755e0b828 '/usr/libexec/cni/host-device'
A: mode=-rwxr-xr-x size.human='3.7 MB' size.bytes=3668632 uid=0 gid=0 mtime='2021-11-23T12:35:14Z' H=[A:10] hash=d9bc2b115c407864e262796d369e326ed5c315e0 '/usr/libexec/cni/bandwidth'
A: mode=-rwxr-xr-x size.human='3.6 MB' size.bytes=3636184 uid=0 gid=0 mtime='2021-11-23T12:35:15Z' H=[A:10] hash=27040589f922383c35c35479215cb29f1cc4aa9b '/usr/libexec/cni/portmap'
cmd=xray info=layer.objects.top.end
cmd=xray info=layer.end
cmd=xray info=layer.start
cmd=xray info=layer path='6bf026b653dbaeb475e8cce167bb3856f97880c7f0c0eaa64153091e604f5c83/layer.tar' index='11' id='6bf026b653dbaeb475e8cce167bb3856f97880c7f0c0eaa64153091e604f5c83'
cmd=xray info=change.instruction index='0:14' type='RUN' snippet='RUN sed -i s|/usr/libexec/crio/conmon|/usr/b...' all='RUN sed -i s|/usr/libexec/crio/conmon|/usr/bin/conmon| /etc/crio/crio.conf && systemctl enable microshift.service && systemctl enable crio'
cmd=xray info=other.instructions count='1'
cmd=xray info=other.instruction pos='0' index='0:15' type='ENV' snippet='ENV KUBECONFIG=/var/lib/microshift/resources...' all='ENV KUBECONFIG=/var/lib/microshift/resources/kubeadmin/kubeconfig'
cmd=xray info=layer.stats all_size.human='1.5 kB' all_size.bytes='1548'
cmd=xray info=layer.stats object_count='8'
cmd=xray info=layer.stats dir_count='5'
cmd=xray info=layer.stats file_count='1'
cmd=xray info=layer.stats link_count='2'
cmd=xray info=layer.stats max_file_size.bytes='1548' max_file_size.human='1.5 kB'
cmd=xray info=layer.stats modified_size.human='1.5 kB' modified_size.bytes='1548'
cmd=xray info=layer.change.summary modified='6' added='2' all='8' deleted='0'
cmd=xray info=layer.objects.count value='8'
cmd=xray info=layer.objects.top.start
M: mode=-rw-r--r-- size.human='1.5 kB' size.bytes=1548 uid=0 gid=0 mtime='2022-03-11T13:30:48Z' H=[A:10/M:11] hash=91ecf02a8fb90eabea775e01994faa3efb662594 '/etc/crio/crio.conf'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2022-03-11T13:30:48Z' H=[A:0/M:11] '/etc/systemd/system/multi-user.target.wants'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2022-03-11T13:29:19Z' H=[A:0/M:2,5,10,11] '/etc/systemd'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2022-03-11T13:29:49Z' H=[A:0/M:2,10,11] '/etc/systemd/system'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2022-03-11T13:30:48Z' H=[A:6/M:10,11] '/etc/crio'
A: mode=Lrwxrwxrwx size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2022-03-11T13:30:48Z' H=[A:11] '/etc/systemd/system/multi-user.target.wants/crio.service' -> '/usr/lib/systemd/system/crio.service'
A: mode=Lrwxrwxrwx size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2022-03-11T13:30:48Z' H=[A:11] '/etc/systemd/system/multi-user.target.wants/microshift.service' -> '/usr/lib/systemd/system/microshift.service'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2022-03-11T13:30:42Z' H=[A:0/M:1,2,5,6,9,10,11,12,13] '/etc'
cmd=xray info=layer.objects.top.end
cmd=xray info=layer.end
cmd=xray info=layer.start
cmd=xray info=layer index='12' id='beb67098e287f51febd1161b77d77d25405ee904420611061203684ad06bcdc3' path='beb67098e287f51febd1161b77d77d25405ee904420611061203684ad06bcdc3/layer.tar'
cmd=xray info=change.instruction index='0:16' type='RUN' snippet='RUN if [ $HOST == rhel7 ] || [ $IPTABLES != ...' all='RUN if [ $HOST == rhel7 ] || [ $IPTABLES != nft ]; then dnf install -y libnetfilter_conntrack libnfnetlink && dnf clean all && export ARCH=$(uname -m) && rpm -v -i --force https://archives.fedoraproject.org/pub/archive/fedora/linux/releases/28/Everything/$ARCH/os/Packages/i/iptables-libs-1.6.2-2.fc28.$ARCH.rpm https://archives.fedoraproject.org/pub/archive/fedora/linux/releases/28/Everything/$ARCH/os/Packages/i/iptables-1.6.2-2.fc28.$ARCH.rpm ; else dnf install -y iptables && dnf clean all; fi'
cmd=xray info=layer.stats all_size.human='25 MB' all_size.bytes='24981228'
cmd=xray info=layer.stats object_count='473'
cmd=xray info=layer.stats dir_count='143'
cmd=xray info=layer.stats file_count='187'
cmd=xray info=layer.stats link_count='143'
cmd=xray info=layer.stats max_file_size.human='14 MB' max_file_size.bytes='14528512'
cmd=xray info=layer.stats deleted_file_count='5'
cmd=xray info=layer.stats added_size.bytes='1938124' added_size.human='1.9 MB'
cmd=xray info=layer.stats modified_size.human='23 MB' modified_size.bytes='23043104'
cmd=xray info=layer.change.summary deleted='5' modified='181' added='287' all='473'
cmd=xray info=layer.objects.count value='473'
cmd=xray info=layer.objects.top.start
M: mode=-rw-r--r-- size.human='14 MB' size.bytes=14528512 uid=0 gid=0 mtime='2022-03-11T13:30:55Z' H=[A:0/M:2,10,12] hash=da9efa4229156ec3ac2a615a19cf0db650e6c053 '/var/lib/rpm/Packages'
M: mode=-rw-r--r-- size.human='2.7 MB' size.bytes=2662400 uid=0 gid=0 mtime='2022-03-11T13:30:54Z' H=[A:2/M:10,12] hash=e398cbbce92d388a7a1cfd2f4248171a83008bdd '/var/cache/dnf/packages.db'
M: mode=-rw-r--r-- size.human='2.1 MB' size.bytes=2072392 uid=0 gid=0 mtime='2022-03-11T13:30:54Z' H=[A:2/M:10,12] hash=836e4097ede1cc960ca97250f4a6f6cfa13a09f2 '/var/lib/dnf/history.sqlite-wal'
M: mode=-rw-r--r-- size.human='1.3 MB' size.bytes=1318912 uid=0 gid=0 mtime='2022-03-11T13:30:55Z' H=[A:0/M:2,10,12] hash=95a4050e3a6f0ec7ee15f4a4b5e5607d7243f499 '/var/lib/rpm/__db.003'
M: mode=-rw-r--r-- size.human='979 kB' size.bytes=978944 uid=0 gid=0 mtime='2022-03-11T13:30:55Z' H=[A:0/M:2,10,12] hash=9bd119ab5ba614fbf571480e13576ac2294bc4b9 '/var/lib/rpm/Basenames'
M: mode=-rw-r--r-- size.human='393 kB' size.bytes=393216 uid=0 gid=0 mtime='2022-03-11T13:30:55Z' H=[A:0/M:2,10,12] hash=c0d549b177afc56b339503019454dea44b2a9f9e '/var/lib/rpm/Dirnames'
M: mode=-rw-r--r-- size.human='287 kB' size.bytes=286720 uid=0 gid=0 mtime='2022-03-11T13:30:55Z' H=[A:0/M:2,10,12] hash=13e878f6a32de874d927d8240291f9d6d27628e4 '/var/lib/rpm/__db.001'
A: mode=-rwxr-xr-x size.human='144 kB' size.bytes=144352 uid=0 gid=0 mtime='2018-08-12T13:42:50Z' H=[A:12] hash=cc0a7b850116c71755efda0481f75c64c76a7f42 '/usr/lib64/libnetfilter_conntrack.so.3.6.0'
M: mode=-rw-r--r-- size.human='119 kB' size.bytes=118784 uid=0 gid=0 mtime='2022-03-11T13:30:54Z' H=[A:2/M:10,12] hash=2c6a6c316c64adf8772decb44f24e5b7de28bc77 '/var/lib/dnf/history.sqlite'
M: mode=-rw-r--r-- size.human='111 kB' size.bytes=110592 uid=0 gid=0 mtime='2022-03-11T13:30:55Z' H=[A:0/M:2,10,12] hash=796d5d704621fdd117f1a54801f9d4ee3b35a163 '/var/lib/rpm/Providename'
A: mode=-rwxr-xr-x size.human='105 kB' size.bytes=104664 uid=0 gid=0 mtime='2018-03-01T17:05:46Z' H=[A:12] hash=f35bb5472cf52f1e7830ddb7cb07de494e5af835 '/usr/sbin/xtables-multi'
M: mode=-rw-r--r-- size.human='98 kB' size.bytes=98304 uid=0 gid=0 mtime='2022-03-11T13:30:55Z' H=[A:0/M:2,10,12] hash=4decea2b4abd93d4a3ec05d882215f4253d00266 '/var/lib/rpm/Requirename'
M: mode=-rw-r--r-- size.human='90 kB' size.bytes=90112 uid=0 gid=0 mtime='2022-03-11T13:30:55Z' H=[A:0/M:2,10,12] hash=14571c84a22c57519f8b38e585428eaee23da079 '/var/lib/rpm/__db.002'
M: mode=-rw-r--r-- size.human='54 kB' size.bytes=53496 uid=0 gid=0 mtime='2022-03-11T13:30:54Z' H=[A:2/M:10,12] hash=e06786d768085521f1e2864c3f52cbb217344fdf '/var/log/dnf.log'
A: mode=-rwxr-xr-x size.human='54 kB' size.bytes=53472 uid=0 gid=0 mtime='2018-03-01T17:05:46Z' H=[A:12] hash=7c61e4374ddd714d4396335aa96001e67248d00f '/usr/lib64/libxtables.so.12.0.0'
A: mode=-rwxr-xr-x size.human='35 kB' size.bytes=34560 uid=0 gid=0 mtime='2018-03-01T17:05:46Z' H=[A:12] hash=70dc0b87fb185bcd68678134dbc1a6cf7dd92238 '/usr/lib64/xtables/libxt_state.so'
A: mode=-rwxr-xr-x size.human='35 kB' size.bytes=34560 uid=0 gid=0 mtime='2018-03-01T17:05:46Z' H=[A:12] hash=9d631ce24e358dfc0fd548971e6b56b4754355d3 '/usr/lib64/xtables/libxt_conntrack.so'
A: mode=-rwxr-xr-x size.human='34 kB' size.bytes=33912 uid=0 gid=0 mtime='2018-03-01T17:05:46Z' H=[A:12] hash=553a9eb2b473f3910fc99e0f172292c14405a686 '/usr/lib64/xtables/libxt_hashlimit.so'
A: mode=-rw-r--r-- size.human='34 kB' size.bytes=33563 uid=0 gid=0 mtime='2018-03-01T17:05:44Z' H=[A:12] hash=1a9815117ce005f8289a080a9b0230bee0b5f354 '/usr/share/man/man8/iptables-extensions.8.gz'
M: mode=-rwxr-xr-x size.human='33 kB' size.bytes=33048 uid=0 gid=0 mtime='2018-03-01T17:05:46Z' H=[A:0/M:12] hash=2b3ad82545179cefa53207fd24c54c36e2a1bc98 '/usr/lib64/libip6tc.so.0.1.0'
cmd=xray info=layer.objects.top.end
cmd=xray info=layer.end
cmd=xray info=layer.start
cmd=xray info=layer index='13' id='1457d86171d5794d9410189ccbf33119f611c0f15d7dfd61c6002fcd594e08e6' path='1457d86171d5794d9410189ccbf33119f611c0f15d7dfd61c6002fcd594e08e6/layer.tar'
cmd=xray info=change.instruction index='0:17' type='RUN' snippet='RUN if [ $HOST == rhel8 ]; then sed -e /moun...' all='RUN if [ $HOST == rhel8 ]; then sed -e /mountopt/s/,\?metacopy=on,\?// -i /etc/containers/storage.conf; fi'
cmd=xray info=other.instructions count='1'
cmd=xray info=other.instruction all='CMD ["/sbin/init"]
' pos='0' index='0:18' type='CMD' snippet='CMD ["/sbin/init"]
'
cmd=xray info=layer.stats all_size.human='7.9 kB' all_size.bytes='7902'
cmd=xray info=layer.stats object_count='3'
cmd=xray info=layer.stats dir_count='2'
cmd=xray info=layer.stats file_count='1'
cmd=xray info=layer.stats max_file_size.human='7.9 kB' max_file_size.bytes='7902'
cmd=xray info=layer.stats modified_size.human='7.9 kB' modified_size.bytes='7902'
cmd=xray info=layer.change.summary added='0' all='3' deleted='0' modified='3'
cmd=xray info=layer.objects.count value='3'
cmd=xray info=layer.objects.top.start
M: mode=-rw-r--r-- size.human='7.9 kB' size.bytes=7902 uid=0 gid=0 mtime='2022-03-11T13:30:56Z' H=[A:10/M:13] hash=d086b4d315b983f67bca8014547020baf347bc42 '/etc/containers/storage.conf'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2022-03-11T13:30:56Z' H=[A:10/M:13] '/etc/containers'
M: mode=drwxr-xr-x size.human='0 B' size.bytes=0 uid=0 gid=0 mtime='2022-03-11T13:30:55Z' H=[A:0/M:1,2,5,6,9,10,11,12,13] '/etc'
cmd=xray info=layer.objects.top.end
cmd=xray info=layer.end
cmd=xray info=image.shells full_name='Bourne shell' short_name='sh' exe_path='/bin/sh' link_path='' reference='' verified='false'
cmd=xray info=image.shells exe_path='/bin/bash' link_path='' reference='' verified='false' full_name='Bash shell' short_name='bash'
cmd=xray info=image.shells full_name='Unknown shell' short_name='' exe_path='/usr/bin/sh' link_path='bash' reference='' verified='true'
cmd=xray info=image.shells short_name='' exe_path='/usr/bin/bash' link_path='' reference='' verified='true' full_name='Unknown shell'
cmd=xray info=image.entry exe_path='/sbin/init' exe_args=''
cmd=xray info=image.special_perms.setuid name='/usr/bin/passwd'
cmd=xray info=image.special_perms.setuid name='/usr/bin/chage'
cmd=xray info=image.special_perms.setuid name='/usr/bin/gpasswd'
cmd=xray info=image.special_perms.setuid name='/usr/bin/su'
cmd=xray info=image.special_perms.setuid name='/usr/sbin/userhelper'
cmd=xray info=image.special_perms.setuid name='/usr/sbin/pam_timestamp_check'
cmd=xray info=image.special_perms.setuid name='/usr/sbin/unix_chkpwd'
cmd=xray info=image.special_perms.setuid name='/usr/bin/mount'
cmd=xray info=image.special_perms.setuid name='/usr/bin/newgrp'
cmd=xray info=image.special_perms.setuid name='/usr/bin/umount'
cmd=xray info=image.special_perms.setuid name='/usr/bin/fusermount3'
cmd=xray info=image.special_perms.setuid name='/usr/libexec/dbus-1/dbus-daemon-launch-helper'
cmd=xray info=image.special_perms.setgid name='/usr/libexec/utempter/utempter'
cmd=xray info=image.special_perms.setgid name='/usr/bin/write'
cmd=xray info=image.special_perms.sticky name='/tmp'
cmd=xray info=image.special_perms.sticky name='/var/tmp'
cmd=xray state=completed
cmd=xray state=done
cmd=xray info=results artifacts.location='/tmp/docker-slim-state/.docker-slim-state/images/b7b2874ce63cf84ad469aa52ce8416d87f4105ba91666818f9e9cc25a943557e/artifacts'
cmd=xray info=results artifacts.dockerfile.original='Dockerfile.fat'
cmd=xray info=report file='slim.report.json'
docker-slim: message='join the Gitter channel to ask questions or to share your feedback' info='https://gitter.im/docker-slim/community'
docker-slim: message='join the Discord server to ask questions or to share your feedback' info='https://discord.gg/9tDyxYS'
docker-slim: message='Github discussions' info='https://github.com/docker-slim/docker-slim/discussions'
$
pentium10 commented 2 years ago

@ksingh7 this is not a bug. You misunderstood how dockerslim minifies your container. You didn't provided any probe.

You need to provide a probe. That probe should "touch" all the relevant files from your application code to function correctly. In the background all system and libraries files which are needed to run your app will be retained in the container. Add a probe and you will likely have a working container, then extend your probe to additional URLs to scan even further your app.

kcq commented 2 years ago

@ksingh7 The image uses systemd to start microshift (so it's not started directly from the entrypoint) and it makes it a bit more complicated, so we'll need to use extra flags to make sure we get everything we need there. Overall we need to make sure that microshift, oc and kubectl are functional. I'll try calling those apps directly in a shell script using a custom entrypoint during minification. Another option to try is an exec probe that calls the apps (oc and kubectl are better candidates for the exec probes, but it might also work with microshift too). It'll be interesting to see what kind of network/http probes can be used as well (but for go apps that's going to be less important). Long term need to add better support for services started with systemd.

kcq commented 2 years ago

@pentium10 thanks for jumping in! yes, need probes and with kubectl and oc (which are CLI apps) we'll need exec probes similar to how the repro/test steps look like.

ksingh7 commented 2 years ago

Hey @kcq thanks for chiming in , you got that right the microshift-aip container image uses other cli tools oc kubectl microshift

I'll try calling those apps directly in a shell script using a custom entrypoint during minification.

Can you elaborate, does that mean i should build my own Dockerfile for microshift-aio container ? currently i am using a pre-build docker image 1.3GB which i am trying to minify

Another option to try is an exec probe that calls the apps (oc and kubectl are better candidates for the exec probes, but it might also work with microshift too)

Can you point me to some example where i can learn how to use exec probe with CLI tools ?

pentium10 commented 2 years ago

AFAIk I would look into the continue-after mode is for this purpose, there is a good discussion here about the various uses.

you need to provide the exec option and replace the curl syntax with the CLI tool probe script --http-probe=false --exec "curl checkip.amazonaws.com"

also you might need to set --continue-after probe&exec so when —exec or —exec-file params are done executing in the temporary container dockerslim collects the artifacts

kcq commented 2 years ago

I'll try calling those apps directly in a shell script using a custom entrypoint during minification.

Can you elaborate, does that mean i should build my own Dockerfile for microshift-aio container ? currently i am using a pre-build docker image 1.3GB which i am trying to minify

No need for that. It's two runtime params (one to mount the custom shell script and another one to point to that custom script as the entrypoint).

The exec probes use the --exec or --exec-file params. Here's a simple example (not enough for this image):docker-slim build --http-probe=false --exec "kubectl get nodes" quay.io/microshift/microshift-aio

Your docker run example opens up ports (docker run -d --rm --name microshift --privileged -v microshift-data:/var/lib -p 6443:6443 quay.io/microshift/microshift-aio) and we might need to do that for the build command too.

kcq commented 2 years ago

@ksingh7 would it be possible to share microshift-data (harder to repro the setup without the configs from that volume)