timeliner icon indicating copy to clipboard operation
timeliner copied to clipboard

Interest in Docker image

Open tbekolay opened this issue 2 years ago • 5 comments

Hi, thanks for the interesting project @mholt! As I'm not a go developer, I wrote up some simple docker things to get this running for me locally without making a full go dev environment. In case it helps anyone else, here they are:

Dockerfile

# syntax=docker/dockerfile:1

FROM golang:1.17

WORKDIR /usr/src/app

COPY go.mod go.sum ./
RUN go mod download && go mod verify

COPY . .
RUN go build -v -o /usr/local/bin ./...

ENTRYPOINT ["timeliner", "-repo", "/repo"]

docker-compose.yml

version: "3.5"
services:
  timeliner:
    build: .
    network_mode: "host"
    user: 1000:1000
    volumes:
      - /media/external/Timeliner:/repo

Usage

  1. Set up the desired repo path somewhere (I used /media/external/Timeliner above) and edit docker-compose.yml to match.
  2. Set up timeliner.toml in the timerliner directory.
  3. Use docker-compose run timeliner to run timeliner commands.

If you're running this on a home server, as I am, you can go through the OAuth flow as normal by using a local port forward (e.g. ssh -L 8008:localhost:8008 my-server).


These things are still kind of rough and would need a bit of polishing before they would be worth making them more accessible, but I wanted to first see if there was any interest in cleaning these up to either put them directly in this repository, or put them in a separate repository, and build images that could be deployed to docker hub or some other place that hosts docker images. I did see #69 but that was a year ago so things may have changed since.

tbekolay avatar Feb 27 '22 17:02 tbekolay

Hey thanks for contributing this. I don't use Docker myself, so if we put it in this repo I don't be able to maintain it. :( So maybe a separate repo is best, unless someone vows to help maintain it. Just let me know! :)

mholt avatar Feb 28 '22 16:02 mholt

I have been trying to get a docker version running myself. I literally found this repo yesterday. I am going to try the above instructions now.

azizur avatar Feb 28 '22 23:02 azizur

This needs a bit more work. On the first run, I am getting the following error.

Creating timeliner_timeliner_1 ... done
Attaching to timeliner_timeliner_1
timeliner_1  | 2022/02/28 23:41:26 [FATAL] Missing subcommand and account arguments (specify one or more of 'data_source_id/user_id')
timeliner_timeliner_1 exited with code 1

azizur avatar Feb 28 '22 23:02 azizur

This does need a bit more work yes, but your docker container is working correctly. You can do

docker-compose run timeliner --help

And see that it's working, you just have to go through the general timeliner configuration steps.

tbekolay avatar Mar 01 '22 01:03 tbekolay

Maybe put in a contrib directory?

tripleo1 avatar Mar 01 '22 16:03 tripleo1