WeeChat is a fast, light and extensible chat client.
- Based on the super slim tklx/base (Debian GNU/Linux).
- Uses tini for zombie reaping and signal forwarding.
- Configured with UTF-8 locale.
- Includes weechat, weechat-plugins and weechat-scripts.
- Includes off-the-record support (privacy).
- Includes inwee and useful snippets (convenience).
- Includes
USER user
to restrict the privileges of weechat. - Includes
EXPOSE 9001
for optional relay configuration.
docker pull tklx/weechat
# non-persistent
docker run --rm -it -e TERM tklx/weechat
# non-persistent, applying all snippets
docker run --rm -it -e TERM tklx/weechat -r "/exec snippets/.inwee-all"
# persistent settings, configuration, chat logs, etc.
mkdir -p ~/.weechat
docker run --rm -it -e TERM -v ~/.weechat:/home/user/.weechat tklx/weechat
# weechat options
docker run --rm -it tklx/weechat --help
# interactive root terminal
docker run --rm -it -u root tklx/weechat /bin/bash
/exec inwee snippets/freenode
/exec inwee snippets/otr
/exec inwee snippets/colors
/exec inwee snippets/unicode
# set your identity
/set irc.server.freenode.nicks <nick>
/set irc.server.freenode.username <username>
/set irc.server.freenode.realname "Your Name"
# optional: if you would like to register your nick/username
/connect freenode
/msg NickServ REGISTER <password> <email>
/msg NickServ VERIFY REGISTER <username> <verificationcode-from-email>
/disconnect
# optional: setup authentication if you have a registered nick/username
/set irc.server.freenode.sasl_username <username>
/set irc.server.freenode.sasl_password <password>
# optional: autoconnect to freenode
/set irc.server.freenode.autoconnect on
# connect to freenode and join a channel
/connect freenode
/join #channel-name
# start a private conversion (without encryption)
/query <nick>
# in the private chat buffer, start the encrypted session
/otr start
# for more information
/help otr
# set an environment variable for convenience
# in this example the container was started with "--name weechat"
inwee="docker exec -i -u user weechat inwee -d /dev/stdin"
# send a command
echo "/help" | $inwee
# send commands from a file
# e.g., you're using a non-persistent container and want to authenticate
cat freenode.creds | $inwee
# send a message to a specific buffer
# e.g., you need to share your audio device details to get help
lspci | grep -i audio | $inwee -b 'irc.freenode.#audiohelp'
Security notice:
- This sets up a non-encrypted relay.
- Access to the relay provides OS execution privileges!
- Use only for testing, and only on localhost.
# configure the relay and password
/relay add weechat 9001
/set relay.network.password <secretrelaypassword>
# get the container's IP address
$ docker ps
$ docker inspect -f '{{.NetworkSettings.IPAddress}}' CONTAINER-ID
# browse to http://glowing-bear.org and connect
The Docker image is built, and pushed by CircleCI from source hosted on GitHub.
- Tag:
x.y.z
refers to a release (recommended). - Tag:
latest
refers to the master branch.
TKLX uses a central issue tracker on GitHub for reporting and tracking of bugs, issues and feature requests.