BitlBee is an IRC to IM gateway. As they state on their homepage...
It's a great solution for people who have an IRC client running all the time and don't want to run an additional MSN/AIM/whatever client.
Ultimately, it is just a Makefile
and Dockerfile
that checks out known working versions of the plugins from the upstream repos and builds them.
Anything that runs Docker or a compatible container framework, can run this. One IM container to rule them all.
Below are the projects bundled in the Docker Image:
- Bitlbee natively supported protocols: https://wiki.bitlbee.org/
- Discord: https://github.com/sm00th/bitlbee-discord
- Facebook: https://github.com/bitlbee/bitlbee-facebook
- Skypeweb: https://github.com/EionRobb/skype4pidgin
- Slack: https://github.com/dylex/slack-libpurple
- Mattermost: https://github.com/EionRobb/purple-mattermost
- Google Hangouts: https://github.com/EionRobb/purple-hangouts
- Google Chat: https://github.com/EionRobb/purple-googlechat
- Steam: https://github.com/bitlbee/bitlbee-steam
- Telegram: https://github.com/majn/telegram-purple
- SIPE: https://github.com/tieto/sipe.git
- RocketChat: https://bitbucket.org/EionRobb/purple-rocketchat
- Mastodon: https://github.com/kensanata/bitlbee-mastodon
- Matrix: https://github.com/matrix-org/purple-matrix
I'm fairly open to requests. File an issue, or shoot me over a PR and I'll see that we get it included.
Included is a Makefile
that should handle most of the heavy lifting for a standard build. However you can customize the build args like so...
# This performs the whole build with all plugins
make all
# This example removes a most plugins, and pins them to specific commits from their respective projects.
docker build -t docker-alpine-bitlbee . \
--build-arg SLACK_ENABLED=1 \
--build-arg SLACK_TAG=8acc4eb \
--build-arg HANGOUTS_ENABLED=1 \
--build-arg HANGOUTS_TAG=3f7d89b \
--build-arg GOOGLE_CHAT_ENABLED=0 \
--build-arg DISCORD_ENABLED=0 \
--build-arg FACEBOOK_ENABLED=0 \
--build-arg SKYPEWEB_ENABLED=0 \
--build-arg STEAM_ENABLED=0 \
--build-arg TELEGRAM_ENABLED=0 \
--build-arg SIPE_ENABLED=0 \
--build-arg ROCKETCHAT_ENABLED=0 \
--build-arg MATRIX_ENABLED=0 \
--build-arg MATTERMOST_ENABLED=0 \
--build-arg MASTODON_ENABLED=0 \
For those running the upstream provided container:
docker run -d \
--name bitlbee \
--restart=always \
-v /opt/bitlbee-data:/var/lib/bitlbee:rw \
-v /etc/localtime:/etc/localtime:ro \
-p 0.0.0.0:6667:6667 \
thisisvantaworks/alpine-bitlbee:latest
For those who built their own locally:
docker run -d \
--name bitlbee \
--restart=always \
-v /opt/bitlbee-data:/var/lib/bitlbee:rw \
-v /etc/localtime:/etc/localtime:ro \
-p 0.0.0.0:6667:6667 \
docker-alpine-bitlbee:latest