From 6f1cac49834c0b0072e87d87405422615b6e95bd Mon Sep 17 00:00:00 2001 From: Quey-Liang Kao Date: Sat, 21 Jan 2017 03:19:17 +0800 Subject: Dockerize this project --- Dockerfile | 23 +++++++++++++++++++++++ README.md | 23 +++++++++++++++++++++++ 2 files changed, 46 insertions(+) create mode 100644 Dockerfile diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..bf5fd8e --- /dev/null +++ b/Dockerfile @@ -0,0 +1,23 @@ +FROM alpine +MAINTAINER Quey-Liang Kao +# Last Modified: 2017/01/21 + +ENV PATH /bin:/sbin:/usr/bin + +RUN apk update \ + && apk add go git + +RUN mkdir -p /src/github.com/gammons/ + +RUN git clone https://github.com/gammons/todolist.git \ + && mv todolist /src/github.com/gammons/ + +ENV GOPATH / + +RUN go install github.com/gammons/todolist + +CMD ["todolist", "web"] + +EXPOSE 7890 + + diff --git a/README.md b/README.md index 202ca5c..3abc2b5 100644 --- a/README.md +++ b/README.md @@ -17,6 +17,29 @@ See [The main Todolist website][tdl] for the current documentation. Yes. Yes it is. +## Quick Start using [Docker](https://github.com/docker/docker.git) + +Building the docker image: +``` +$ git clone https://github.com/gammons/todolist.git +$ cd todolist +$ docker build -t todolist . +``` + +If you have an existing todo-list file, then run the container with +``` +$ docker run -d -v your/todos/json/file:/.todos.json -p 7890:7890 todolist +``` + +Otherwise, you have to provide an empty todo file: +``` +$ echo [] > /tmp/.todos.json +$ docker run -d -v /tmp/.todos.json:/.todos.json -p 7890:7890 todolist +``` + +Finally, open your browser and enter `localhost:7890` at the URL, and \ +happy GTD! + ## Author Please send complaints, complements, rants, etc to [Grant Ammons][ga] -- cgit v1.3