github.com/cloud-foundations/dominator@v0.0.0-20221004181915-6e4fee580046/cmd/imagetool/README.md (about) 1 # imagetool 2 A utility to add, delete, get and compare images on the 3 *[imageserver](../imageserver/README.md)*. 4 5 The *imagetool* is the most important utility in the **Dominator** system, as it 6 is used to manage images. *Imagetool* may be run on any machine. It is typically 7 run on a desktop, bastion or build machine, depending on the sophistication of 8 your build environment. 9 10 ## Usage 11 *Imagetool* supports several sub-commands. There are many command-line flags 12 which provide parameters for these sub-commands. The most commonly used 13 parameter is `-imageServerHostname` which specifies which host the *imageserver* 14 to talk to is running on. The basic usage pattern is: 15 16 ``` 17 imagetool [flags...] command [args...] 18 ``` 19 20 Built-in help is available with the command: 21 22 ``` 23 imagetool -h 24 ``` 25 26 Some of the sub-commands available are: 27 28 - **add**: add an image using a compressed tarfile for image data 29 - **addi**: add an image using an existing image for image data 30 - **addrep**: add an image using an existing image and layer files from 31 compressed tarfiles on top of existing files 32 - **adds**: add an image using files from a running *subd* for image data (this 33 allows "snapshotting" of a golden machine) 34 - **bulk-addrep**: perform addrep operation for all images 35 - **change-image-expiration**: change or remove the expiration time for an image 36 - **check**: check if an image exists 37 - **check-directory**: check if a directory exists 38 - **chown**: change the owner group of an image directory 39 - **copy**: copy an image 40 - **copy-filtered-files**: copy files from a directory tree which match the image filter 41 - **delete**: delete an image 42 - **delunrefobj**: delete (garbage collect) unreferenced objects 43 - **diff**: compare two images 44 - **estimate-usage**: estimate the file-system space needed to unpack an image 45 - **find-latest-image**: find the latest image in a directory 46 - **get**: get and unpack an image 47 - **get-archive-data**: get archive (audit) data for an image 48 - **get-file-in-image**: get file in an image 49 - **get-image-expiration**: get the expiration time for an image 50 - **list**: list all images 51 - **listdirs**: list all directories 52 - **listunrefobj**: list the unreferenced objects on the server 53 - **make-raw-image**: make a bootable RAW image from an image 54 - **match-triggers**: match a path to a triggers file 55 - **merge-filters**: merge filter files 56 - **merge-triggers**: merge trigger files 57 - **mkdir**: make a directory 58 - **patch-directory**: patch (update) a local directory with an image 59 - **scan-filtered-files**: scan a directory and list those matched by the image filter 60 - **show**: show (list) an image 61 - **show-filter**: show the filter for an image 62 - **showunrefobj**: list the unreferenced objects on the server and their sizes 63 - **tar**: create a tarfile from an image 64 - **test-download-speed**: test the speed for downloading objects for an image 65 66 ## Security 67 *[Imageserver](../imageserver/README.md)* restricts RPC access using TLS client 68 authentication. *Imagetool* will load certificate and key files from the 69 `~/.ssl` directory. *Imagetool* will present these certificates to 70 *imageserver*. If one of the certificates is signed by a certificate authority 71 that *imageserver* trusts, *imageserver* will grant access.