Migrating Node.js apps from Heroku to Dokku

eroku (and Dokku) make for an awesome development environment- the most well-known feature being the use of “git push” to deploy changes to a server. For simple projects, I’ve found that the deployment time is as fast as compilation times on JVM based projects, except that at the end you have a working environment. Knowing […]

, , , , ,

Parsing PDFs at Scale with Node.js, PDF.js, and Lunr.js

Technologies used: Vagrant + Virtualbox, Node.js, node-static, Lunr.js, node-lazy, phantomjs Much information is trapped inside PDFs, and if you want to analyze it you’ll need a tool that extracts the text contents. If you’re processing many PDFs (XX millions), this takes time but parallelizes naturally. I’ve only seen this done on the JVM, and decided […]

What is vSphere Hypervisor?

Computer virtualization allows resources from one powerful server to be split among many smaller servers. This lets you manage resources more effectively, e.g. moving memory and CPU resources between virtual machines, turning machines on and off as needed, and moving machines to new hardware with minimal downtime. VMware describes vSphere as their virtualization platform – […]

What is ESX and ESXi?

ESX and ESXi refer generally to two versions of the VMware product line- these are the hypervisors that are part of vSphere. VMware refers to vSphere as a “virtualization platform,” which appears to mean an OS and the administration tools that ship with it. ESX/ESXi are the hypervisors – the critical piece of the operating […]


Installing CouchDB on a VirtualBox instance with Chef and Vagrant

This assumes you’ve already installed Virtualbox and configured a base VM. mkdir cookbooks cd cookbooks git clone https://github.com/opscode-cookbooks/apt git clone https://github.com/opscode-cookbooks/erlang.git git clone https://github.com/opscode-cookbooks/couchdb.git cd .. mkdir vm cd vm vagrant init vi Vagrantfile Insert the following lines before the last line “end”, like so: config.vm.provision :chef_solo do |chef| chef.cookbooks_path = “../cookbooks” chef.add_recipe(“apt”) chef.add_recipe(“couchdb”) end […]

Fixing error “apt-get… return 100 expected 0” (Chef/Vagrant)

When running Chef for the first time on a VM, you may see an error like the following: apt-get -q -y install couchdb=0.10.0-1ubuntu2 returned 100, expected 0 The problem is that your Vagrantfile script does not require Chef to do an “apt-get update” before running it’s scripts. This normally triggers updating the apt database, and […]

Fixing Vagrant error “Chef::Exceptions::CookbookNotFound”

[Fri, 17 Aug 2012 02:52:02 +0200] FATAL: Chef::Exceptions::CookbookNotFound: Cookbook couchdb not found. If you’re loading couchdb from another cookbook, make sure you configure the dependency in your metadata This is an easy error to create if you only downloaded one cookbook. It’s tempting to write the path as “./couchdb” when in fact, the path is […]

Vagrant: “The following SSH command responded with a non-zero exit status. “

Vagrant up often returns the following error running Chef scripts: The following SSH command responded with a non-zero exit status. Vagrant assumes that this means the command failed! mount -t vboxsf -o uid=`id -u vagrant`,gid=`id -g vagrant` v-csc-1 /tmp/vagrant-chef-1/chef-solo-1/cookbooks You can troubleshoot this by logging into the running server, then running the command (the password […]

Fixing “The box ‘base’ could not be found.” (Vagrant)

This is an indication that the the base virtual image is not configured, usually from forgetting to finish the installation. This image is copied, and modified to produce the desired virtualized environment. It’s easy to fix, by running the following: vagrant box add base http://files.vagrantup.com/lucid32.box It is also possible that you installed the box under […]