This is a dockerfile setup for taskserver
Make your own certs (the ones referenced in entrypoint.sh). Taskserver comes with some cert generation scripts you can use if you want.
Initialize users by making an init-orgs folder in a tasks folder and
touch a file for each user. You'll be mounting this folder in your container.
For a first time run, you want something like this:
$ tree tasks
tasks
├── init-orgs
│ └── your-org-name-here
│ ├── username1
│ └── username2
└── ssl
├── api.cert.pem
├── api.key.pem
├── ca.cert.pem
├── ca.key.pem
├── server.cert.pem
├── server.crl.pem
└── server.key.pemThe taskd user needs write access to tasks.
You also probably want to listen on quad zeros instead of localhost. But maybe not, I don't know your setup who am I to know how you set your things up?
Anyway. Once your tasks folder is setup somewhere with certs and probably a user or two, build and run this with:
$ docker build -t taskserver .
$ docker run -d \
--name=taskserver \
--hostname=taskserver \
-e TASKD_HOSTNAME=0.0.0.0 \
-p 7358:7358 \
-v /my/safe/space/tasks:/tasks \
taskserverTail the logs (docker logs -f taskserver) to find your unique user ID... or
look at the files in the mounted tasks folder to find the user string. Dump
something like this in your ~/.taskrc to config your client:
taskd.certificate=/home/you/.task/your-user.cert.pem
taskd.key=/home/you/.task/your-user.key.pem
taskd.ca=/home/you/.task/ca.cert.pem
taskd.server=your.domain.tld:7358
taskd.credentials=your-org/your-user/12345678-abcd-efgh-ijkl-901234567890You should be able to task sync init if you have dns setup for your domain
and you're not firewalled.