(c) 2015 Jens Erat
Redistribution and modifications are welcome, see the LICENSE file for details.
Taskwarrior is an open-source cross platform command-line task management tool. It allows you to capture, annotate, manipulate and present your tasks, then sync them among devices.
This Dockerfile packages taskd, Taskwarrior's sync server, built from source.
The image stores configuration and data in /var/taskd
, which you should persist somewhere. Example configuration is copied during each startup of the container into the /var/taskd/orig
directory, which you can adjust for your own use. For creating the initial directory hierarchy and example configuration, simply run the container with the /var/taskd
volume already exposed or linked, for example using
docker run -v /srv/taskd:/var/taskd jenserat/taskd
Copy both the config
file and the orgs
directory (which contains the data) out of orig
. Make sure to set server=0.0.0.0:53589
, so the port can actually be exposed by docker, root=/var/taskd
(which is still set to the orig
subfolder) and log=/var/log/taskd.log
, which is redirected to stdout (so docker logs
can collect it).
Make sure all files are owned by the container's taskd user (uid 53589), for example by running
chown -R 53589 /srv/taskd
For setting up taskd, refer to official documentation.
Run the image in a container, exposing taskd's port and making /var/taskd
permanent. An example run command might be
docker run -d \
--name='taskd' \
--publish='53589:53589' \
--volume='/srv/taskd:/var/taskd' \
jenserat/taskd
Refer to the official documentation regarding any actions needed for upgrading taskd.