Releases: GoogleContainerTools/kaniko
v1.5.0
v1.5.0 Release 2021-01-25
This releases publishes multi-arch image kaniko images for following platforms
- linux/amd64
- linux/arm64
- linux/ppc64le
If you want to add other platforms, please talk to @tejal29.
The executor images in this release are:
gcr.io/kaniko-project/executor:v1.5.0
gcr.io/kaniko-project/executor:latest
The debug images are available at:
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.5.0-debug and
In this release, we have 2 slim executor images which don't contain any authentication binaries.
gcr.io/kaniko-project/executor:slim
&gcr.io/kaniko-project/executor:v1.5.0-debug
Highlights:
- Multi-arch images for
linux/amd64
,linux/arm64
andlinux/ppc64le
- Support caching for copy layers via flag
--cache-copy-layers
- Analyze your own kaniko builds using Slow-Jam
Help make us kaniko faster by profiling your kaniko run
New features:
- Mutli-arch support #1531, #1474
- Add support to fetch a github pull request #1543
- Add --image-name-tag-with-digest flag #1541
- add caching copy layers back #1518
- Profiling for Snapshotting errors. #1530
- feat(warmer): Warmer now supports all registry-related flags #1499
- feat: Add https tar.gz remote source for context #1519
- Add option customPlatform #1500
- feat: support multiple registry mirrors with fallback #1498
- Add s390x kaniko build to multi-arch list #1475
Bug Fixes
- reject tarball writes with no destinations #1534
- Fix travis-ci link #1535
- fix: extract file as same user for warmer docker image #1538
- fix: update busybox version to fix CVE-2018-1000500 #1532
- Fix typo in error message #1494
- Fix COPY with --chown command #1477
- Remove unused code #1495
- Fixes #1469 : Remove file that matches with the directory path #1478
- fix: CheckPushPermissions not being called when using --no-push and --cache-repo #1471
Refactors
- Switch to runtime detection via bpfd/proc #1502
- Update ggcr to pick up estargz and caching option #1527
Documentation
- Document flags for tarball build only #1503
- doc: clarify the format of --registry-mirror #1504
- add section to run lints #1480
- Add docs for GKE workload identity. #1476
Huge thank you for this release towards our contributors:
- Alec Rajeev
- Fabrice
- Josh Chorlton
- Lars
- Lars Toenning
- Matt Moore
- Or Geva
- Severin Strobl
- Shashank
- Sladyn
- Tejal Desai
- Theofilos Papapanagiotou
- Vincent Behar
- Yulia Gaponenko
- ankitm123
- bahetiamit
- ejose19
- mickkael
- zhouhaibing089
v1.3.0
v1.3.0 Release 2020-10-29
This release publishes, multi-arch image kaniko executor images.
Note: The muti-arch images are only available for executor images. Contributions Welcome!!
The executor images in this release are:
gcr.io/kaniko-project/executor:v1.3.0
gcr.io/kaniko-project/executor:latest
gcr.io/kaniko-project/executor:arm64
gcr.io/kaniko-project/executor:arm64-v1.3.0
gcr.io/kaniko-project/executor:amd64
gcr.io/kaniko-project/executor:amd64-v1.3.0
gcr.io/kaniko-project/executor:multi-arch
gcr.io/kaniko-project/executor:multi-arch-v1.3.0
The debug images are available at:
gcr.io/kaniko-project/executor:v1.3.0-debug
gcr.io/kaniko-project/executor:debug-v1.3.0 and
gcr.io/kaniko-project/executor:debug
New features
- Added in docker cred helper for Azure Container Registry sourcing auth tokens directly from environment to debug image #1458
- Add multi-arch image via Bazel #1452
Bug fixes
- Fix docker build tag #1460
- Fix .dockerignore for build context copies in later stages #1447
- Fix permissions on cache when --no-push is set #1445
Huge thank you for this release towards our contributors:
- Akram Ben Aissi
- Alex Szakaly
- Alexander Sharov
- Anthony Davies
- Art Begolli
- Batuhan Apaydın
- Ben Einaudi
- Carlos Alexandro Becker
- Carlos Sanchez
- Chris Mellard
- Chris Sng
- Christopher Hlubek
- Cole Wippern
- Dani Raznikov
- Daniel Marks
- David Dooling
- Didier Durand
- DracoBlue
- Gabriel Virga
- Gilbert Gilb's
- Giovan Isa Musthofa
- Gábor Lipták
- Harmen Stoppels
- Ian Kerins
- James Ravn
- Joe Kutner
- Jon Henrik Bjørnstad
- Jon Johnson
- Jordan GOASDOUE
- Jordan Goasdoue
- Jordan Goasdoué
- Josh Chorlton
- Josh Soref
- Keisuke Umegaki
- Liubov Grinkevich
- Logan.Price
- Lukasz Jakimczuk
- Martin Treusch von Buttlar
- Matt Moore
- Mehdi Abaakouk
- Michel Hollands
- Mitchell Friedman
- Moritz Wanzenböck
- Or Sela
- PhoenixMage
- Pierre-Louis Bonicoli
- Renato Suero
- Sam Stoelinga
- Shihab Hasan
- Sladyn
- Takumasa Sakao
- Tejal Desai
- Thomas Bonfort
- Thomas Stromberg
- Tinjo Schöni
- Tom Prince
- Vincent Latombe
- Wietse Muizelaar
- Yoan Blanc
- Yoriyasu Yano
- Yuheng Zhang
- aca
- cvgw
- ejose19
- ohchang-kwon
- priyawadhwa
- tinkerborg
- tsufeki
- xanonid
- yw-liu
- 好风
v1.2.0
v1.2.0 Release 2020-09-30
This is the 27th release of Kaniko!
In this release, Copy layers are not cached there by making builds faster!!
- Stop caching COPY layers #1408
Huge thank you for this release towards our contributors:
- Ian Kerins
The executor images in this release are:
gcr.io/kaniko-project/executor:v1.2.0 and
gcr.io/kaniko-project/executor:latest
The debug image is available at:
gcr.io/kaniko-project/executor:debug-v1.2.0 and
gcr.io/kaniko-project/executor:debug
v1.1.0
v1.1.0 Release 2020-09-30
This is the 26th release of Kaniko!
The executor images in this release are:
gcr.io/kaniko-project/executor:v1.1.0 and
gcr.io/kaniko-project/executor:latest
The debug image is available at:
gcr.io/kaniko-project/executor:debug-v1.1.0 and
gcr.io/kaniko-project/executor:debug
New features
Bug fixes
- Fix docker-credential-gcr helper being called for multiple registries #1439
- Fix docker-credential-gcr not configured across regions#1417
Updates and Refactors
- add tests for configuring docker credentials across regions. #1426
Documentation
- Update README.md #1437
- spelling: storage #1425
- Readme.md : Kaniko -> kaniko #1435
- initial release instructions #1419
- Improve --use-new-run help text, update README with missing flags #1405
- Add func to append to ignorelist #1397
- Update README.md re: layer cache behavior #1394
- Fix links on README #1398
Huge thank you for this release towards our contributors:
- aca
- Akram Ben Aissi
- Alexander Sharov
- Alex Szakaly
- Anthony Davies
- Art Begolli
- Batuhan Apaydın
- Ben Einaudi
- Carlos Alexandro Becker
- Carlos Sanchez
- Chris Sng
- Christopher Hlubek
- Cole Wippern
- cvgw
- Daniel Marks
- Dani Raznikov
- David Dooling
- Didier Durand
- DracoBlue
- Gábor Lipták
- Gabriel Virga
- Gilbert Gilb's
- Giovan Isa Musthofa
- Harmen Stoppels
- Ian Kerins
- James Ravn
- Joe Kutner
- Jon Henrik Bjørnstad
- Jon Johnson
- Jordan Goasdoue
- Jordan GOASDOUE
- Jordan Goasdoué
- Josh Chorlton
- Josh Soref
- Keisuke Umegaki
- Liubov Grinkevich
- Logan.Price
- Lukasz Jakimczuk
- Martin Treusch von Buttlar
- Mehdi Abaakouk
- Michel Hollands
- Mitchell Friedman
- Moritz Wanzenböck
- ohchang-kwon
- Or Sela
- PhoenixMage
- Pierre-Louis Bonicoli
- priyawadhwa
- Renato Suero
- Sam Stoelinga
- Shihab Hasan
- Takumasa Sakao
- Tejal Desai
- Thomas Bonfort
- Thomas Stromberg
- Thomas Strömberg
- tinkerborg
- Tom Prince
- tsufeki
- Vincent Latombe
- Wietse Muizelaar
- xanonid
- Yoan Blanc
- Yoriyasu Yano
- Yuheng Zhang
- yw-liu
- 好风
v1.0.0
This is the 25th release of Kaniko!
We are happy to announce the kaniko v1.0.0 release with a lot of performance optimizations.
- Make your builds 50% faster with a new snapshotMode
--snapshotMode=redo
for projects with a huge number of files. - Make your builds 75% faster with the experimental
--use-new-run
flag.
Below, is a graph on percentage decrease in build time compared to default--snaphotMode=full
for different project sizes.
SnaphotMode=redo
The snapshot mode redo is based on D. J. Bernstein's Redo tool
In this snapshot strategy, to detect file changes, unlike the Full Snapshot Modethe contents of the file are not hashed. Only the following Attributes of the files are hashed.
- File Size,
- File Mod Time
- File Mode
- File Group Id, UserId
Using redo snapshotter, reduced the build time from 30 mins to 12 mins about 56% improvement for a file system with 700K files
The time spent in computing hash for all the files in FS, reduced from 15 mins to mere 18 seconds.
Note: These are small text files and in full snapshot mode the time to hash a file depends on the file size which will further improve your build performance.
To use the new redo snapshotter add the following flag to kaniko command --snapshotMode=redo
.
[Experimental] New Run command implementation.
This version comes with a newer implementation of Run command which does not rely on snapshotting at all.
In this approach, in order to compute which files were changed, Kaniko will walk the entire FS before and after executing the run Command.
Walking the entire filesystem takes about 1 to 3 seconds for 700K files which outweighs the time required to compute a large number of hash keys as file-system size increases.
With this new run command implementation, the total build time is reduced for 29 mins to 7 mins with a huge improvement of 75%
To use the new Run command implementation, use the --use-new-run=true
flag.
Note: --use-new-run
is experimental. For builds with a small number of files and number of Run
commands, this might lead to performance degradation.
We are looking forward to hearing your feedback!
The executor images in this release are:
gcr.io/kaniko-project/executor:v1.0.0 and
gcr.io/kaniko-project/executor:latest
The debug image is available at:
gcr.io/kaniko-project/executor:debug-v1.0.0 and
gcr.io/kaniko-project/executor:debug
New features:
- Specify advance options for git checkout branch. #1322
- To specify a branch, use
--git=branch=branchName
- To specify an option to checkout a single branch, use
--git=single-branch=true
- To change submodule recursions behavior while cloning, use
--git=recurse-submodules=true
- To specify a branch, use
- Checkout a specific git commit #1153
- Add ability to specify GIT_TOKEN for git source repository. #1318
- The experimental
--use-new-run
flag avoid relying on timestamp. #1383
Bug Fixes:
- Set correct PATH for exec form #1342
- executor image: fix USER environment variable #1364
- fix use new run marker #1379
- Use current platform when fetching image in warmer #1374
- Bump version number mismatch #1338
- Bugfix: Reproducible layers with whiteout #1350
- prepend image name when using
registry-mirror
solibrary/
is inferred #1264 - Add command should fail on 40x when fetching remote file #1326
Refactors & Updates:
- bump go-containerregistry dep #1371
- feat: upgrade go-git #1319
- Move snapshotPathPrefix into a method #1359
Documentation:
Huge thank you for this release towards our contributors:
- Alex Szakaly
- Alexander Sharov
- Anthony Davies
- Art Begolli
- Batuhan Apaydın
- Ben Einaudi
- Carlos Alexandro Becker
- Carlos Sanchez
- Chris Sng
- Christopher Hlubek
- Cole Wippern
- Dani Raznikov
- Daniel Marks
- David Dooling
- DracoBlue
- Gabriel Virga
- Gilbert Gilb's
- Giovan Isa Musthofa
- Gábor Lipták
- Harmen Stoppels
- James Ravn
- Joe Kutner
- Jon Henrik Bjørnstad
- Jon Johnson
- Jordan GOASDOUE
- Jordan Goasdoue
- Jordan Goasdoué
- Josh Chorlton
- Liubov Grinkevich
- Logan.Price
- Lukasz Jakimczuk
- Mehdi Abaakouk
- Michel Hollands
- Mitchell Friedman
- Moritz Wanzenböck
- Or Sela
- PhoenixMage
- Pierre-Louis Bonicoli
- Renato Suero
- Sam Stoelinga
- Shihab Hasan
- Takumasa Sakao
- Tejal Desai
- Thomas Bonfort
- Thomas Stromberg
- Thomas Strömberg
- Tom Prince
- Vincent Latombe
- Wietse Muizelaar
- Yoan Blanc
- Yoriyasu Yano
- Yuheng Zhang
- aca
- cvgw
- ohchang-kwon
- priyawadhwa
- tinkerborg
- tsufeki
- xanonid
- yw-liu
v0.24.0
This is the 24th release of Kaniko!
The executor images in this release are:
gcr.io/kaniko-project/executor:v0.24.0 and
gcr.io/kaniko-project/executor:latest
The debug image is available at:
gcr.io/kaniko-project/executor:debug-v0.24.0 and
gcr.io/kaniko-project/executor:debug
New features:
- Add a new run command along with a new flag #1300
- Add redo snapshotter. #1301
- Add pkg.dev to automagic config file population #1328
- kaniko now clone git repositories recursing submodules by default #1320
Bug fixes:
Refactors:
- check file changed in loop #1302
- ADD GCB benchmark code #1299
- benchmark FileSystem snapshot project added #1288
- [Perf] Reduce loops over files when taking FS snapshot. #1283
- Fix README.md #1323
- Fix docker-credential-gcr owner and group id #1307
- benchmark FileSystem snapshot project added #1288
- [Perf] Reduce loops over files when taking FS snapshot. #1283
Huge thank you for this release towards our contributors:
- Alexander Sharov
- Alex Szakaly
- Anthony Davies
- Art Begolli
- Batuhan Apaydın
- Ben Einaudi
- Carlos Alexandro Becker
- Carlos Sanchez
- Chris Sng
- Cole Wippern
- cvgw
- Daniel Marks
- Dani Raznikov
- David Dooling
- DracoBlue
- Gábor Lipták
- Gabriel Virga
- Gilbert Gilb's
- Giovan Isa Musthofa
- James Ravn
- Jon Henrik Bjørnstad
- Jon Johnson
- Jordan Goasdoué
- Liubov Grinkevich
- Logan.Price
- Lukasz Jakimczuk
- Mehdi Abaakouk
- Michel Hollands
- Mitchell Friedman
- Moritz Wanzenböck
- ohchang-kwon
- Or Sela
- PhoenixMage
- priyawadhwa
- Sam Stoelinga
- Tejal Desai
- Thomas Bonfort
- Thomas Stromberg
- Thomas Strömberg
- tinkerborg
- Tom Prince
- Vincent Latombe
- Wietse Muizelaar
- xanonid
- Yoan Blanc
- Yoriyasu Yano
- Yuheng Zhang
- yw-liu
v0.23.0
v0.23.0 Release 2020-06-04
This is the 23rd release of Kaniko!
A special 📣 to Alex SZAKALY for helping, reviewing and testing Kaniko Debug image
The executor images in this release are:
gcr.io/kaniko-project/executor:v0.23.0 and
gcr.io/kaniko-project/executor:latest
The debug image is available at:
gcr.io/kaniko-project/executor:debug-v0.23.0 and
gcr.io/kaniko-project/executor:debug
Bug Fixes
- Resolving nested meta ARGs #1260
- add 64 busybox #1254
- Apply dockefile exclude only for first stage #1234
New Features
- Add /etc/nsswitch.conf for /etc/hosts name resolution #1251
- Add ability to set git auth token using environment variables #1263
- Add retries to image push. #1258
- Update docker-credential-gcr to support auth with GCP Artifact Registry #1255
Updates and Refactors
- Added integration test for multi level argument #1285
- rename whitelist to ignorelist #1295
- Remove direct use of DefaultTransport #1221
- fix switching to non existent workdir #1253
- remove duplicates save for the same dir #1252
- add timings for resolving paths #1284
Documentation
- Instructions for using stdin with kubectl #1289
- Add GoReportCard badge to README #1249
- Make support clause more bold. #1273
- Correct typo #1250
- docs: add registry-certificate flag to readme #1276
Huge thank you for this release towards our contributors:
- Anthony Davies
- Art Begolli
- Batuhan Apaydın
- Ben Einaudi
- Carlos Alexandro Becker
- Carlos Sanchez
- Chris Sng
- Cole Wippern
- Dani Raznikov
- Daniel Marks
- David Dooling
- DracoBlue
- Gabriel Virga
- Gilbert Gilb's
- Giovan Isa Musthofa
- Gábor Lipták
- James Ravn
- Jon Henrik Bjørnstad
- Jordan GOASDOUE
- Liubov Grinkevich
- Logan.Price
- Lukasz Jakimczuk
- Mehdi Abaakouk
- Michel Hollands
- Mitchell Friedman
- Moritz Wanzenböck
- Or Sela
- PhoenixMage
- Sam Stoelinga
- Tejal Desai
- Thomas Bonfort
- Thomas Stromberg
- Thomas Strömberg
- Tom Prince
- Vincent Latombe
- Wietse Muizelaar
- Yoan Blanc
- Yoriyasu Yano
- Yuheng Zhang
- cvgw
- ohchang-kwon
- tinkerborg
- xanonid
- yw-liu
v0.22.0
This is the 22th release of Kaniko! Thank you for patience.
This is minor release which fixes
- GCB Authentication issue 1242
- Re-added files if removed from base imaged 1236
The executor images in this release are:
gcr.io/kaniko-project/executor:v0.22.0 and
gcr.io/kaniko-project/executor:latest
The debug image is available at:
gcr.io/kaniko-project/executor:debug-v0.22.0 and
gcr.io/kaniko-project/executor:debug
Big Thanks to
- David Dooling
v0.21.0
This is the 21th release of Kaniko! Thank you for patience.
This is minor release which fixes the /kaniko/.docker
being removed in executor and debug image
- Fixes #1227 - Readded the /kaniko/.docker directory #1230
- Fix: GCR credential helper check does not respect DOCKER_CONFIG environment variable
Big Thanks to
- David Dooling
- Daniel Marks
for fixing these bugs!
The images in this release are:
gcr.io/kaniko-project/executor:v0.20.0 and
gcr.io/kaniko-project/executor:latest
The debug image is available at:
gcr.io/kaniko-project/executor:debug-v0.20.0 and
gcr.io/kaniko-project/executor:debug
v0.20.0
This is the 20th major release of Kaniko!
In this release, the highlights are:
- Fix doubling cache layers size and error due to duplicate files in cached layers
- Kaniko now supports reading a tar context from a stdin using
--context=tar://
- Kaniko adds a new flag
--context-sub-path
to represent a subpath within the given context - Skip building unused stages using
--skip-unused-stages
flags.
Thank you all for your patience and supporting us throughout!
gcr.io/kaniko-project/executor:v0.20.0 and
gcr.io/kaniko-project/executor:latest
The debug image is available at:
gcr.io/kaniko-project/executor:debug-v0.20.0 and
gcr.io/kaniko-project/executor:debug
Bug Fixes
- Snapshot FS on first cache miss. #1214
- Add secondary group impersonation w/ !cgo support #1164
- kaniko generates images that docker supports in the presence of dangling symlinks #1193
- Handle
MAINTAINERS
when passing--single-snapshot
. #1192 - Multistage ONBUILD COPY Support #1190
- fix previous name checking in 'executor.build.fetchExtraStages' #1167
- Always add parent directories of files to snapshots. #1166
- Fix
workdir
command pointing to relative dir in first command. - fix stages are now resolved correctly when
--skip-unused-stages
is used
New Features
- Add ability to use public GCR repos without being authenticated #1140
- Add timestamp to logs #1211
- Add http support for git repository context #1196
- Kaniko now resolves args from all stages #1160
- kaniko adds a new flag
--context-sub-path
to represent a subpath within the given context - feat: allow injecting through stdin tar.gz on kaniko #1139
- Set image platform for any build #1130
- Add --log-format parameter to README.md #1216
- feat: multistages now respect dependencies without building unnecessary stages #1165
Refactors and Updates
- Refactor Kaniko to test across multistages #1155
- upgrade go container registry to latest master #1146
- small perf optimizing. Only remove whiteout path if it needs to be included in base image #1147
- Don't generate cache key, if not caching builds. #1194
- Set very large logs to Trace level #1203
- optimize: don't parse Dockerfile twice, reusing stages #1174
- 32bit overflow fix #1168
Documentation
Huge thank you for this release towards our contributors:
- Anthony Davies
- Batuhan Apaydın
- Ben Einaudi
- Carlos Alexandro Becker
- Carlos Sanchez
- Cole Wippern
- cvgw
- Dani Raznikov
- DracoBlue
- Gilbert Gilb's
- Giovan Isa Musthofa
- James Ravn
- Jon Henrik Bjørnstad
- Jordan GOASDOUE
- Jordan Goasdoué
- Liubov Grinkevich
- Logan.Price
- Michel Hollands
- Moritz Wanzenböck
- ohchang-kwon
- Or Sela
- PhoenixMage
- Sam Stoelinga
- Tejal Desai
- Thomas Bonfort
- Thomas Stromberg
- Thomas Strömberg
- tinkerborg
- Tom Prince
- Vincent Latombe
- Wietse Muizelaar
- xanonid
- Yoan Blanc
- Yuheng Zhang
- yw-liu