dockery
v1.1.0
Published
Build your package and create docker image
Maintainers
Readme
dockery
A simple script that builds your package and creates a docker image in one sitting, preparing it for docker hub.
You can decide how to tag your image:
- The default uses the version number of package.json.
--hashuses the hash of the latest git commit.--tagsets the tag name manually (in combination with the given repo and package name)--latesttags the image as being the latest version.
To push a built docker image to docker hub, you need to be logged in
with docker login. You can also use dockery with a different registry by
passing the --registry argument.
Install
npm install -g dockery
# or
yarn global add dockeryUsage
dockery -fCombines the package.json's name and version number as a tag name, builds the
package by running npm run build (or yarn run build) and then builds the
docker image, using a Dockerfile.
The -f flag overwrites an existing image with the same tag name.
Note that in order to generate a valid image tag name the name needs to be
scoped, e.g. begins with @dockery/.
This is used as the docker hub repository.
You could also set the repository name by passing the --repo argument.
Hashed image version
dockery --hashThis will read the hash of the last git commit and use it as the tag name.
Publish a manual tagged image
dockery --repo=test --package=test-pkg --tag=v1.0.0-alpha1 --pushThis will create a docker image with the tag name test/test-pkg:v1.0.0-alpha1
and pushes it to the docker hub on a successful build.
Arguments
You can print all available arguments with dockery --help.
dockery [options]
-d --directory=STRING
Sets the work directory
-f --force
Overwrites an existing image
--hash
Use latest commit hash as tag name
-h --help
Show this help text
-l --latest
Tag as latest
--package=ALPHANUMERIC
Set the package name.
Default is read from the name field in
your package.json
--push
Push docker image to registry
-q --quiet
Disable most of the log outputs
-r --registry=STRING
Use a custom registry
--repo=ALPHANUMERIC
Set the docker repo.
Default is read from the docker-repository field in
your package.json
--tag=ALPHANUMERIC
Set manual tag name. Default is the package version number.
-e --tag-prefix=STRING
Prefix of the generated tag. E.g. "build-". Default is noneSupport
If you have any questions, do not hesitate and raise an issue on github.com/lumio/dockery.
Tests & Development
This project uses yarn to resolve its dependencies and jest for unit tests.
yarn
yarn testWe are grateful for any help. Feel free to fork this project and adapt it.
