Dockerized version of Lazybones project creation tool
What is Lazybones?
Lazybones was born out of frustration that Ratpack does not and will not have a command line tool that will bootstrap a project. It's a good decision for Ratpack, but I'm lazy and want tools to do the boring stuff for me.
The tool is very simple: it allows you to create a new project structure for any framework or library for which the tool has a template.
The concept of Lazybones is very similar to Maven archetypes, and what Yeoman does for web applications. Lazybones also includes a subtemplates feature that resembles the behaviour of Yeoman's sub-generators, allowing you to generate optional extras (controllers, scaffolding etc.) inside a project.
You can run a Lazybones by using the Docker image directly, passing a Lazybones command to docker run
.
For example, view list of standard project templates
docker run --rm dkorotych/lazybones list
or create a Maven project
docker run --rm --interactive --tty --volume $PWD:/app dkorotych/lazybones create https://dl.bintray.com/dkorotych/lazybones-templates/maven-quickstart-template-1.4.1.zip .
By creating an alias, you can use Lazybones in the same way as if you had installed everything on your computer.
function lazybones() {
mounts=""
for volume in "${HOME}/.lazybones" "${HOME}/.groovy" "${HOME}/.m2"
do
if [ ! -d "$volume" ]; then
mkdir -p ${volume}
fi
mounts="${mounts} --volume $volume:$volume"
done
docker run \
--rm \
--interactive \
--tty \
--tmpfs /tmp \
--volume /etc/group:/etc/group:ro \
--volume /etc/passwd:/etc/passwd:ro \
--user "$(id -u):$(id -g)" \
--volume "${PWD}":/app \
${mounts} \
dkorotych/lazybones $@
}
Tag | Description |
---|---|
latest | Lazybones 0.8.3 on Java 8 |
0.8.3-jre8 | Lazybones 0.8.3 on Java 8 |
0.8.2-jre8 | Lazybones 0.8.2 on Java 8 |
0.8.1-jre8 | Lazybones 0.8.1 on Java 8 |
0.8.3-jre7 | Lazybones 0.8.3 on Java 7 |
0.8.2-jre7 | Lazybones 0.8.2 on Java 7 |
0.8.1-jre7 | Lazybones 0.8.1 on Java 7 |