- Update docker tools url location
- Fix unit tests: remove called_with and called_once_with as invalid assertion introduced in python 3.12
- This version is the same as 1.3.14
- Support for runsc as engine for execution mode R1: closes #414
- New option
login --password-stdin
: closes #168 - New option
run --pull=reuse
to be used with --name= and with and image name as argument. Instead of always pulling and creating a new container --pull=reuse allows to execute an existing container and only pull+create if the container does not exist - New option
run --httpproxy=<proxy>
: closes #418 - Improve handling of registry names in login: closes #168
- Improve handling of image names in pull: closes #168
- Improve handling of mount point removal: closes #406, #399
- Support for AWS ECR registries: closes #168
- Remove pycurl dependency on unit tests
- Documentation fixes
- udocker improve binary executables selection
- udocker fix fakechroot parsing of so, exec_path and add cmd subst
- udocker implement minor pylint compliance improvements
- udocker mode Pn make links2symlinks disabled by default in config: closes #412
- New udockertools 1.2.11 tarball
- udockertools mode Fn glibc fix dladdr(), dlopen(), dlmopen(), dl_iterate_phdr()
- udockertools mode Fn glibc add dladdr1()
- udockertools mode Fn glibc add execvpe(), execveat()
- udockertools mode Fn glibc add getauxval()
- udockertools mode Fn glibc add scandirat(), scandirat64()
- udockertools mode Fn glibc change stat64(), lstat64(), stat()
- udockertools mode Fn glibc add narrowing of program_invocation_name
- udockertools mode Fn glibc improve command substitution
- udockertools mode Fn musl fix dladdr(), dlopen(), dlmopen(), dl_iterate_phdr()
- udockertools mode Fn musl execvpe()
- udockertools mode Fn musl improve command substitution
- udockertools mode Fn added support for Alpine 3.19 (x86_64)
- udockertools mode Fn added support for Fedora 39 (x86_64, aarch64, ppc64le)
- udockertools mode Rn include runc 1.1.12
- Fix unit tests, no modifications w.r.t. 1.3.11
- Add support for hard link to symbolic link conversion in Pn modes as hard links cannot be created by unprivileged users: partially addresses #388
- Check of availability of network extensions for port mapping and netcoop in Pn modes and only use them if supported by the proot engine being invoked.
- Improve image metadata generated by udocker on import: closes #398
- Improved handling of container platform information
- Added support for QEMU on Pn modes enabling execution of containers with architectures different than the host
- Selection of executable for Sn mode now defaults to apptainer and in second place to singularity
- The new command
manifest inspect
allows display of image manifests therefore enabling access to the catalogue of platforms supported by a given image - The new command
tag
enables changing the name of an existing image - New option
pull --platform=os/architecture
enables pulling of images of a given architecture possibly different from the host - New option
run --platform=os/architecture
enables pull and run of images of a given architecture possibly different from the host - New option
import --platform=os/architecture
enables to specify an architecture for the image - New option
ps -p
enables list of the architectures of containers - New option
images -p
enables list of the architectures of containers - Build udockertools 1.2.10 and set it as default
- The udockertools support for Fn now includes Ubuntu 23:04, Fedora 38, Alpine 3.17 and 3.18.
- Experimental support for native Fn execution on arm64 for Fedora 36, Fedora 37, Fedora 38, CentOS 7, AlmaLinux 8, AlmaLinux 9 and Ubuntu 22, Ubuntu 20, Ubuntu 18 and similar.
- Experimental support for native Fn execution on ppc64le for CentOS 7, AlmaLinux 8, AlmaLinux 9, Ubuntu 22, Ubuntu 20, Ubuntu 18 and similar.
- Experimental support for runc in arm64 and ppc64le
- Updated version of Pn engines for x86, x86_64, arm64: addresses #393
- Add support to access non-config metadata from containers
- Added support for multiplatform manifests and indices: closes #392, #355
- Build udockertools 1.2.9 and set it as default
- Add Fn support for Ubuntu:22
- Remove files to be installed
- Set Fn preference to use runc
- Remove deprecated unit tests. udocker is the same as version 1.3.6
- Re-implement udocker namespace: closes #380
- Login fails all the time: closes #379
- Ignore image loading if already exists: closes #378
- Fix python backwards compatibility issues: closes #374
- Fix incorrectly reported errors by image verification
- Fix image search returning empty results
- Fix issue with logical links in the udocker executable path
- Add check to verify if container name exists before creation or cloning
- Add --force option to create and clone to allow creation of container even if the intended name given by --name exists
- Prevent closing of file descriptors upon engine invocation improves PMI process management interface interoperability
- Fix issues in import and export while using pipes.
- Fix image name parsing where "library" component is missing: closes #359
- Fix 2 unit tests
- Image list does not truncate long names: closes #349
- Fix conditional warning in verify image
- Fix and improve udocker high level tests
- Fix missing f (format) for string
- Fix bugs with dict .items()
- Solving several pylint issues
- Remove use2to3: closes #358
- Add --entrypoint to run --help
- Set docker hub registry registry-1.docker.io
- Fix repository name in search --list-tags
- Improve tests: udocker_test.sh and udocker_test-run.sh
- Documentation revision and improvements
- Add licenses and licenses notice to documentation
- Add test instructions
- Issues with --allow-root in Python 3.8
- Add security policy SECURITY.md
- Remove old Python 2 tests
- Fix configuration hierarchy, configuration files
- Update documentation: README, user and install manuals
- Fix sqa and config
- Prepare to move the stable code for Python 3 and Python 2 >= 2.6 to master
- Installation procedure changed since 1.1.x series see the
installation_manual
- Improve user and installation documentation
- Extract documentation upon installation
- Add codemeta.json, metadata for the software
- Add support for
faccessat2()
in Pn and Fn execution modes - Fix support for
newfstatat()
in Pn execution modes - Add Fn libraries for Fedora 34 and Ubuntu 21.04
- Remove broken links in FileUtil.remove()
- Update minimum udocker tools tarball to 1.2.8
- Cmd and entrypoint metadata and arguments processing changed to mimic docker
- Improve removal of files and links in install and filebind restore
- Add follow location option to GetURL()
- Implement use of
--entrypoint=<cmd>
to force execution of command: closes #306 - Implement use of
--entrypoint=""
to bypass entrypoint in metadata: closes #306
- Method Unshare.unshare os.strerror() takes one argument: closes #254
- Add unit test for #254
- Method chown udocker.utils.fileutil FileUtil: closes #276
- Several fixes of unit tests and pylint
- Fix confusion between exit code 0 and inferred False
- Dereference on
safe_prefixes
- untar exclude dev
- Fix rmi for referenced layers
- Set default for
PROOT_TMP_DIR
- sysdir mountpoint not found and set tmpdir
- Update installation instructions
- Improve
oskernel_isgreater()
- Improve
osinfo()
- Fix repository login/logout
- Improve keystore logic
- Fix pull /v2
- Fix Rn modes to enable containers execution from readonly dirs
- Documentation centralized installation and readonly setups
- Fix handling of dockerhub repository names in /v2
- Improve documentation and align with 1.1.8b2
- Add credits
- Fix delete of paths with symlinks: closes #267, #265
- Fix issues with login credentials: closes #310
- Fix pull images from docker hub in Termux: closes #307
- Fix issues on running udocker in googlecolab: closes #286
- Fix execution with Pn modes in alternate /tmp: closes #284
- Add conditional delay-directory-restore to untar layers
- Add exclude of whiteouts on layer untar
- Add --nobanner to udocker run
- Major restructuring of the code
- Major restructuring of the unit tests
- Porting to Python 3, still supports python 2.7
- All fixes up to previous 1.1.7 version have been applied
- Added scripts tests udocker:
utils/udocker_test.sh utils/udocker_test-run.sh
- Last 1.1.x release
- Fix Rn modes to enable containers execution from readonly dirs
- Documentation centralized installation and readonly setups
- Fix P1 when Linux 4.8.0 SECCOMP is backported, affects newer CentOS 7: closes #282
- Check for file ownership on remove wrongly follows symlinks: closes #266, #267
- udocker unexpectedly uses P1 exec mode instead of P2: closes #274
- Allow passing of
PROOT_TMP_DIR
environment variable: closes #284
- Complete fix for of ELF paths in modes Fn for "$ORIGIN:$ORIGIN": closes #255
- Preliminary fix for of ELF paths in modes Fn for $ORIGIN:$ORIGIN
- Add Fn libraries for Ubuntu20, Fedora32, Fedora33
- Add Fn libraries for Alpine 3.12, 3.13
- Fix run --location
- Fix udocker integrated help
- Fix naming of containers
- Improve parsing of image names
- Documentation improvements
os._exit
from Unshare.unshare()- Disable
FAKECHROOT_DISALLOW_ENV_CHANGES
in F4 mode
- Use hub.docker.com as default registry
- Search using v1 and v2 APIs
- Implement API /v2/search/repositories
- Adjust search results to screen size
- List container size with ps -s
- List container execution modes with ps -m
- Added support for nameat() and statx() in Pn and Fn modes
- Added Fn libraries for Ubuntu18, Ubuntu19, Fedora29, Fedora30, Fedora31, CentOS8
- Added Fn libraries for Alpine 3.8, 3.9, 3.10, 3.11
- Added support for sha512 hashes
- Added support for opaque whiteouts
- Added search --list-tags to available tags for a given repository
- Add CLI support for image names in format host/repository:tag
- Support for fake root in Sn execution modes via --user=root
- Improve verify of loaded/pulled images
- Improve handling of mountpoints
- Added --containerauth to enable direct use of the container passwd and group
- Added support for file mount bindings in singularity
- Added
UDOCKER_USE_PROOT_EXECUTABLE
env var to select proot location - Added
UDOCKER_USE_RUNC_EXECUTABLE
env var to select runc location - Added
UDOCKER_USE_SINGULARITY_EXECUTABLE
env var to select singularity - Added
UDOCKER_DEFAULT_EXECUTION_MODE
env var to select default execution mode - Added R2 and R3 execution modes for PRoot overlay execution in runc
- Added setup --purge for cleanup of mountpoints and files
- Added setup --fixperms to fix container file permissions
- Added run --env-file= to load file with environment variables
- Improve file and directory binding support for Singularity and runc
- Add command rename for renaming of containers
- Create processes without shell context
- Safer parsing of config files and removal of directories
- Improve installation
- Improved fix of SECCOMP accelerated mode for P1 mode
- Added loading and handling of container images in OCI format
- Fixes for udocker in ARM aarch64
- Fix processing of --dri in Sn mode: closes #241
- Improve handling of container and host authentication: addresses #239
- Fixes to address authentication and redirects in pull: closes #225, #230
- Added minimal support to load OCI images: closes #111
- Added Pn support for newer distributions: closes #192
- Improve the installation of udockertools: closes #220, #228
- Add --env-file= - to read environment variables from file: closes #212
- Prepare for pypy: closes #211
- Fixes for verification of container images: closes #209
- Fix command line processing for "-" in argument: closes #202
- Fix file protections on extraction making files u+r : closes #202, #206
- Fix comparison of kernel versions having non-integers: closes #183
- Support for both manifest V2 schema 1 and schema 2: closes #218, #225
- Further improved pathname translation in Fn modes: closes #160
- Implement save images in docker format: closes #74
- useradd and groupadd not working in containers: closes #141
- fix return code when exporting to stdin: closes #202
- Support for nvidia drivers on ubuntu: closes #162
- Installation improvements: closes #166
- Fix issue on Fn mode symlink conversion: addresses #160
- Improve parsing of quotes in the command line: closes #98
- Fix version command to exit with 0: closes #107
- Add kill-on-exit to proot on Pn modes
- Improve download of udocker utils
- Handle authentication headers when pulling: closes #110
- Handle of redirects when pulling
- Fix registries table
- Support search quay.io
- Fix auth header when no standard Docker registry is used
- Add registry detection on image name
- Add --version option
- Force python2 as interpreter: closes #131
- Fix handling of volumes in metadata
- Handle empty metadata
- Fix http proxy functionality: closes #115
- Ignore --no-trunc and --all in the images command: closes #108
- Implement verification of layers in manifest
- Add --nvidia to support GPUs and related drivers
- Send download messages to stderr
- Enable override of curl executable
- Fix building on CentOS 6: closes #157
- Mitigation for upstream limitation in runC without tty: closes #132
- Fix detection of executable with symlinks in container: closes #118
- Updated runC to v1.0.0-rc5
- Experimental support for Alpine in Fn modes
- Improve pathname translation in Fn modes for mounted dirs: addresses #160
- New execution engine using singularity
- Updated documentation with OpenMPI information and examples
- Additional unit tests
- Redirect messages to stderr
- Improved parsing of quotes in the command line: closes #87
- Allow override of the HOME environment variable
- Allow override of libfakechroot.so at the container level
- Automatic selection of libfakechroot.so from container info
- Improve automatic install
- Enable resetting prefix paths in Fn modes in remote hosts
- Do not set
AF_UNIX_PATH
in Fn modes when the host /tmp is a volume - Export containers in both docker and udocker format
- Import containers docker and udocker format
- Load, import and export to/from stdin/stdout
- Clone existing containers
- Support for TCP/IP port remap in execution modes Pn
- Fix run with basenames failing: closes #89
- Allow run as root flag: closes #91
- Support image names prefixed by registry similarly to docker
- Add execution engine selection logic
- Add fr execution engine based on shared library interception
- Add rc execution engine based on rootless namespaces
- Improve proot tmp files cleanup on non ext filesystems
- Improve search returning empty on Docker repositories
- Improve runC execution portability
- Add environment variable
UDOCKER_KEYSTORE
: closes #75 - Prevent creation of .udocker when
UDOCKER_KEYSTORE
is used: closes #75
- Documentation fixes
- Support for import Docker containers in newer metadata structure
- Improve the command line parsing
- Improve temporary file handling and removal
- Support for additional execution engines to be provided in the future
- Improved parsing of entrypoint and cmd metadata: closes #53
- Increase name alias length: closes #52
- Add support for change dir into volume directories: closes #51
- Fix deletion of files upon container import: closes #50
- Fix exporting of host environment variables to the containers: closes #48
- Change misleading behavior of import tarball from move to copy: closes #44
- Fix validation of volumes specification: closes #43
- Improve download on repositories that fail authentication on /v2
- Improve run verification of binaries with recursive symbolic links
- Improve accelerated seccomp on kernels >= 4.8.0 : closes #40
- Minor bugfixes
- Executable name changed from udocker.py to udocker
- Added support for login into docker repositories
- Added support for private repositories
- Added support for listing of v2 repositories catalog
- Added checksum verification for sha256 layers
- Improved download handling for v1 and v2 repositories
- Improved installation tarball structure
- Insecure flag fixed
- Address seccomp change introduced on kernels >= 4.8.0
- Utilities for packaging
- Improved verbose levels, messaging and output: closes #24, #23
- Fully implement support for registry selection --registry parameter: closes #29
- Provide support for private repositories e.g. gitlab registries: closes #30
- Provide --insecure command line parameter for SSL requests: closes #31
- Initial version