Skip to content

A prototype cli for dockerized clojure development.

Notifications You must be signed in to change notification settings

mikeball/clj-cliprototype

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 

Repository files navigation

clj-cliprototype

An experimental prototype cli for dockerized development.

This setup is primarily tested on linux which require some special setup of user permissions. Mac users please see the section below on removing the entrypoint from your dockerfile because it will cause you problems.

Setup

# you must have docker and bash installed
docker --version
bash --version


# clone the repository to a local directory
cd ~/work
git clone [email protected]:mikeball/clj-cliprototype.git


# link the user directory to home directory location
ln -s ~/work/clj-cliprototype/usr ~/.taoclj


# make the script executable and link to path (eg ~/bin)
chmod a+x ~/work/clj-cliprototype/taoclj.sh
ln -s ~/work/clj-cliprototype/taoclj.sh ~/bin/taoclj

Usage

taoclj <command> <template> <name>

Create a new console application

# create your new app from a template, and move into it's directory
taoclj new console myconsoleapp
cd myconsoleapp

# first build the docker image
make docker-build

# run your docker dev environment
make docker-run

=> you should now be in a terminal inside your docker that looks like this
λ /work/


# start a clojure repl
lein repl

Mac Users

In the dev/container/Dockerfile comment out the entrypoint line.

# ENTRYPOINT /opt/entrypoint.sh

Editor

Now you should have a fully containerized linux/java environment with tools you need ready for use.

Use your editor of choice to connect via nrepl on port 9090

JDK Access

TODO: add sshfs access to container for access to JDK for Cursive.

About

A prototype cli for dockerized clojure development.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published