No project description provided
Project description
docker-image-size-limit
Limit your docker
image size with a simple CLI command.
Perfect to be used inside your CI process.
Read the announcing post.
Installation
pip install docker-image-size-limit
Or use our Github Action or pre-built docker image.
Usage
We support just a single command:
$ disl your-image-name:label 300MiB
your-image-name:label exceeds 300MiB limit by 114.4 MiB
Options
You can specify your image as:
- Image name:
python
- Image name with tag:
python:3.6.6-alpine
You can specify your size as:
- Raw number of bytes:
1024
- Human-readable megabytes:
30 MB
or30 MiB
- Human-readable gigabytes:
1 GB
or1 GiB
- Any other size supported by
humanfriendly
Programmatic usage
You can also import and use this library as python
code:
from docker import from_env
from docker_image_size_limit import check_image_size
oversize = check_image_size(from_env(), 'image-name:latest', '1 GiB')
assert oversize < 0, 'Too big image!' # negative oversize - is a good thing!
We also ship PEP-561 compatible type annotations with this library.
Github Action
You can also use this check as a Gihub Action:
- uses: wemake-services/docker-image-size-limit@master
with:
image: "$YOUR_IMAGE_NAME"
size: "$YOUR_SIZE_LIMIT"
Here's an example.
Docker Image
We have a pre-built image available.
First, pull our pre-built docker image:
docker pull wemakeservices/docker-image-size-limit
Then you can use it like so:
docker run -v /var/run/docker.sock:/var/run/docker.sock --rm \
-e INPUT_IMAGE="$YOUR_IMAGE_NAME" \
-e INPUT_SIZE="$YOUR_SIZE_LIMIT" \
wemakeservices/docker-image-size-limit
Should I use it?
You can use this script instead:
LIMIT=1024 # adjust at your will
IMAGE='your-image-name:latest'
SIZE="$(docker image inspect "$IMAGE" --format='{{.Size}}')"
test "$SIZE" -gt "$LIMIT" && echo 'Limit exceeded'; exit 1 || echo 'Ok!'
But I prefer to reuse tools over
custom bash
scripts here and there.
License
MIT.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for docker-image-size-limit-0.3.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3ddf8a1164dcc505b89150a9150b4f788e40272599e5b52e75dcc37d9aa06a25 |
|
MD5 | c5ab919aef81fa79d2e0a9525c425035 |
|
BLAKE2b-256 | bb9c6d1a7ecd16e0c791647b3fb55059ff0ad53edcca6fcb6b8d164c07dcb2ba |
Hashes for docker_image_size_limit-0.3.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 67126fce8acb66ff45d0952eb54511cad0c5bdf7cdb22720a487f04ee3da8b32 |
|
MD5 | 3d85e422cee015c00dafd98a0b851351 |
|
BLAKE2b-256 | 86be5325788a7d4e82f60e13e53674bf89f033f51ffac99ce848beeeaef44076 |