Public Repository

Last pushed: 3 years ago
Short Description
Huginn is a system for building agents that perform automated tasks for you online. They can read the web, watch for events, and take actions on your behalf.
Full Description


This is a docker image for Hugann, a system for running agents to do various tasks. "Think of it as a hackable Yahoo! Pipes plus IFTTT on your own server."

This image is optimized in two ways:

  • It does not include a database, under the assumption that each container should perform only one application. Running a database with Docker is easy (see bellow).
  • It is quick to rebuild when Huginn code changes because it installs Gems in a independent step. So it will be frequently updated.

Check out Huginn on Github.

Quick Start

Launch a MySQL container

docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=password -d mysql

Generate a secret (to use in the next two steps)

git clone clone
cd huginn
rake secret

Important: When launching the Hugann containers change the value of APP_SECRET_TOKEN to the value from the previous step and change the value of INVITATION_CODE to something of your own choosing.

Run the database creation script

docker run --rm --link huginn-mysql:db \
  -e "DATABASE_NAME=huginn_development" \
  -e "DATABASE_PASSWORD=password" \
  -e "INVITATION_CODE=my-invitation-code" \
  andrewcurioso/huginn rake db:create db:migrate

Seed the database (optional)

You may also want to seed the database with sample data. After running the DB creation script you can seed the new database.

Important: If you do this on a production system you must change the value of SEED_USERNAME and SEED_PASSWORD

docker run --rm --link huginn-mysql:db \
  -e "SEED_USERNAME=admin" \
  -e "SEED_PASSWORD=password" \
  andrewcurioso/huginn rake db:seed

Launch Huginn

docker run --name some-huginn --link huginn-mysql:db \
  -e "DATABASE_NAME=huginn_development" \
  -e "DATABASE_PASSWORD=password" \
  -p 3000:3000 -d andrewcurioso/huginn


Before deploying to production, make sure to create a real database user and password. And don't use the root MySQL account.

You can override any environment variables when launching the Huginn container. For an example list see the .env.example file.

Docker Pull Command