Skip to content

jee-r/docker-weechat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

docker-weechat

Docker Image Size (latest by date) GitHub Workflow Status (branch) Docker Pulls DockerHub ghcr.io

A docker image for weechat weechat logo
Check out my Glowing-bear docker image if you need a WebUI.

What is weechat ?

From weechat.io:

Full-featured IRC plugin: multi-servers, proxy support, IPv6, SASL authentication, nicklist, DCC, and many other features.

How to use these images

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.

With Docker

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

With Docker Compose

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

Volume mounts

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 containing weechat.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

Environment variables

  • 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 the TZ environment variable. The full list of available options can be found on Wikipedia.

Ports

  • 8000: Non-ssl port for relay (change it if necessary).
  • 8002: Ssl port for relay (change it if necessary).

License

This project is under the GNU Generic Public License v3 to allow free use while ensuring it stays open.