Sign inSign up

evanshunt/taskrunner

By evanshunt

•Updated over 7 years ago

A Docker container for running common developer tasks.

Image
0

1.1K

evanshunt/taskrunner repository overview

⁠Taskrunner

This container ships with npm, Node, Bower, Grunt, Jekyll, Compass and Sass.

⁠Usage examples

Run an npm install in your current working directory: docker run --rm -it -v "$(pwd)":/app evanshunt/taskrunner npm install

Run a grunt build in your current working directory: docker run --rm -it -v "$(pwd)":/app evanshunt/taskrunner grunt build

Serve up your current working directory with Jekyll: docker run --rm -it -p 4000:4000 -v "$(pwd)":/app evanshunt/taskrunner jekyll serve -H 0.0.0.0

Run a compass watch in your current working directory: docker run --rm -it -v "$(pwd)":/app evanshunt/taskrunner compass watch

Run sass against a file in your current working directory: docker run --rm -it -v "$(pwd)":/app evanshunt/taskrunner sass --watch file.scss

⁠Notes

⁠Watching files

Running watch tasks in Grunt isn't recommended in non-Linux environments as file performance is slow and CPU usage runs extremely high in this scenario. See https://github.com/docker/for-mac/issues/77⁠

⁠Jekyll/ruby environments

While this container ships with a globally installed Jekyll package, it's recommended you work off a project Gemfile so that the version of Jekyll and its plugins are defined in your project's source code. To do that, you can install Jekyll this way using the task runner:

docker run --rm -it -v "$(pwd)":/app -v "$(pwd)/vendor/bundle":/usr/local/bundle evanshunt/taskrunner bundle install jekyll

Please note the additional directory mounting: -v "$(pwd)/vendor/bundle":/usr/local/bundle. This mounting ensures any Gems, such as Jekyll, installed to your project, persist in your container by being saved to your local disk in a /vendor/bundle directory in your project. Adding /vendor/bundle to your .gitignore is strongly recommended.

Tag summary

Content type

Image

Digest

Size

424 MB

Last updated

over 7 years ago

docker pull evanshunt/taskrunner