https://github.com/justwatchcom/artificer
Docker image builder for Kubernetes
https://github.com/justwatchcom/artificer
docker gitlab kubernetes
Last synced: 5 months ago
JSON representation
Docker image builder for Kubernetes
- Host: GitHub
- URL: https://github.com/justwatchcom/artificer
- Owner: justwatchcom
- License: mit
- Created: 2018-05-29T13:40:15.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2021-12-15T15:42:42.000Z (over 4 years ago)
- Last Synced: 2025-09-29T06:39:34.261Z (9 months ago)
- Topics: docker, gitlab, kubernetes
- Language: Go
- Size: 285 KB
- Stars: 12
- Watchers: 3
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Artificer
## Purpose
Creates docker containers using a base image and the provided files together with a config (environment variables and the run command CMD).
Useful inside of Kubernetes or Docker-containers, as you don't need to access the docker demon.
It then automatically uploads the image to GCR.
## Usage
CLI-Flag | Shorthand | Usage
---|---|---
`--baseimage` | `-b` | The path to the base Image (`FROM` in Dockerfiles)
`--target` | `-t` | The path to the destination repository where the new image gets pushed to.
`--files` | `-f` | The path to a file or directory that will be included at the container root. Use this flag multiple times to specify multiple files or directories.
`--env` | `-e` | An Environment Variable definition of the form `VARIABLE=VALUE`. Use this flag multiple times to specify multiple environment variables
`--cmd` | `-c` | The command that runs automatically once the container is launched (`CMD` in Dockerfiles).
Example:
```bash
$> artificer \
--baseimage="eu.gcr.io/some-registry/alpine:latest" \
--target="eu.gcr.io/some-registry/myprogram:latest" \
-f "~/go/bin/myprogram" \
-f "/some/other/file/or/directory" \
-e "SOMEPATH=/usr/bin/SomePath" \
-e "SOMEMOREENV=otherEnv" \
-c "/myprogram --params"
```