A Docker container for running common developer tasks.
1.1K
This container ships with npm, Node, Bower, Grunt, Jekyll, Compass and Sass.
Dockerfile linksRun 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
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
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.
Content type
Image
Digest
Size
424 MB
Last updated
over 7 years ago
docker pull evanshunt/taskrunner