Skip to content
πŸ‘¨β€πŸ³πŸž Quick and easy baking of computing environments.
JavaScript Shell HTML Other
Branch: dev
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
config fix: adding memory to baker init template Oct 30, 2019
installers chore: updating md5sums in PKGBUILD Aug 26, 2019
lib fix: fixing regex for parsing version of bakelets Oct 31, 2019
remotes/bakelets-source Merge commit 'e07c7bc4d507b676b9fda86801aee5fc7c357d06' into dev Oct 31, 2019
.editorconfig Adding editorconfig βš™οΈ Jun 10, 2017
.gitignore package-lock.json should be commited into source repo Nov 2, 2018 chore(release): 0.7.2 Aug 26, 2019
Gruntfile.js move content of /src to top-level directory Nov 2, 2018
baker.js move content of /src to top-level directory Nov 2, 2018
global-vars.js Baker vault POC. Nov 25, 2018

Baker community survey πŸžβ‰οΈ

If you have time, please answer few short questions to help us improve Baker: community survey

Baker 🍞 | dependencies Status

Meet Baker! -- a simple tool for provisioning virtual machines and containers. With Baker you can quickly create development environments and run your code. With one tool, you have the functionality of vagrant, docker, ansible, and task runners like grunt.

See a running demo below: asciicast

For more details, checkout and join our Slack.

Install from source

git clone
cd Baker
npm install
npm link

Also see other binary installation options.

Using Baker

Baker uses a configuration file (baker.yml) in the root directory of you project. This is an example of a baker.yml file. By running baker bake Baker provisions a VM with nodejs installed, and the specified ip address and port forwarding rules configured for you. You can access the VM by running baker ssh or run commands inside the VM with baker run <Command Name>. Your code is accessible in the VM via a shared folder.

name: baker-test
  ports: 8000
  - nodejs9
  serve: cd /baker-test/deployment/express && npm install && node index.js

You can also point to a git repository with a baker.yml file, and and Baker will do the rest:

$ baker bake --repo

Baker also supports creating environments inside containers that do not require a VM.

name: baker-docs
  ports: 8000
  - python2
  build: mkdocs build
  serve: mkdocs serve -a
  gh-deploy: mkdocs gh-deploy

Setting up a Java environment with MySQL can be done easily.

name: onboard
  ports: 8080
  - mysql_password:
      prompt: Type your password for mysql server
  - maven
  - mysql:
      version: 8
      service_conf: env/templates/mysql.cfg
      client_conf: env/templates/my.cnf
  - java8
  - template: 
      src: env/templates/hibernate-template.cfg.xml 
      dest: /Onboarding/CoffeeMaker/src/main/resources/hibernate.cfg.xml
  serve: cd CoffeeMaker && mvn spring-boot:run
  debug: cd CoffeeMaker && mvnDebug spring-boot:run
  test: cd CoffeeMaker && mvn test
You can’t perform that action at this time.