A docker image for weechat
Check out my Glowing-bear docker image if you need a WebUI.
From weechat.io:
Full-featured IRC plugin: multi-servers, proxy support, IPv6, SASL authentication, nicklist, DCC, and many other features.
- Source Code : https://github.com/weechat/weechat
- Documentation : https://weechat.org/doc/
- Official Website : https://weechat.org
All the lines commented in the examples below should be adapted to your environment.
Note: --user $(id -u):$(id -g)
should work out of the box on linux systems. If your docker host run on windows or if you want specify an other user id and group id just replace with the appropriates values.
docker run \
--detach \
--interactive \
--name weechat \
--user $(id -u):$(id -g) \
--volume /etc/localtime:/etc/localtime:ro \
#--volume ./config:/config \
--env TZ=Europe/Paris \
#--publish 8000:8000 \
#--publish 8001:8001 \
j33r/weechat:latest
docker-compose
can help with defining the docker run
config in a repeatable way rather than ensuring you always pass the same CLI arguments.
Here's an example docker-compose.yml
config:
version: '3'
services:
weechat:
image: j33r/weechat:latest
container_name: weechat
restart: unless-stopped
user: $(id -u):$(id -g)
#ports:
# - 8000:8000
# - 8002:8002
environment:
- TZ=Europe/Paris
volumes:
#- ./config:/config
- /etc/localtime:/etc/localtime:ro
Due to the ephemeral nature of Docker containers these images provide a number of optional volume mounts to persist data outside of the container:
/config
: The weechat config directory containingweechat.conf
, scripts, logs and all stuff to customize your weechat instance./etc/localtime
: This directory is for have the same time as host in the container.
You should create directory before run the container otherwise directories are created by the docker deamon and owned by the root user
HOME
: set home diretory for user in the container (default:/config
).TERM
: set colors in termnal (default:screen-256color
).LANG
: set locale (default:C.UTF-8
).TZ
: To change the timezone of the container set theTZ
environment variable. The full list of available options can be found on Wikipedia.
8000
: Non-ssl port for relay (change it if necessary).8002
: Ssl port for relay (change it if necessary).
This project is under the GNU Generic Public License v3 to allow free use while ensuring it stays open.