Yetibot on Docker in 𝓧 minutes or less

Trevor Hartman

Yetibot is now on Docker! This is the fastest way to get up and running. To demonstrate, let's run it with Docker using the most minimal configuration possible: an in-memory (non-durable) Datomic configuration and a single IRC adapter config. (I'm assuming your local Docker is installed.)


_20
mkdir -p ~/tmp/config
_20
_20
cat << EOF > ~/tmp/config/config.edn
_20
{:yetibot
_20
{:db {:datomic-url "datomic:mem://yetibot"}
_20
:adapters
_20
[{:name "freenode-irc",
_20
:type :irc,
_20
:host "chat.freenode.net",
_20
:port "6665",
_20
:username "yetibot-docker"
_20
:rooms #{"#yetibot"}}]}}
_20
EOF
_20
_20
docker run --name yetibot \
_20
-d -p 3000:3000 \
_20
-v ~/tmp/config:/usr/src/app/config \
_20
devth/yetibot
_20
_20
docker logs -f yetibot

N.B. I chose ~/tmp/config because:

If you are using Docker Machine on Mac or Windows, your Docker daemon has only limited access to your OS X or Windows filesystem. Docker Machine tries to auto-share your /Users (OS X) or C:\Users (Windows) directory. — Mount a host directory as a data volume

If you're not using Docker Machine feel free to put it wherever you like.

Hop on Freenode and join the #yetibot channel. Once yetibot-docker joins, try it out!


_10
!list yetibot on docker | xargs echo ⚡️⚡️⚡️ %s ⚡️⚡️⚡️

When you're done, clean up with:


_10
docker rm -f yetibot

To get the most out of Yetibot you'll want to configure some of the optional services. See the full config sample and check out yetibot.com for more info on the cool things you can do with Yetibot!

where 𝓧 ≈ somewhere between 1 and 3.5 minutes