From 019b20ead0f9835ac2ad1a3ae6484c4cd3b30e05 Mon Sep 17 00:00:00 2001 From: Florian Le Roux Date: Tue, 25 Jul 2017 13:22:17 +0200 Subject: [PATCH 1/3] add docker support --- .dockerignore | 7 +++++++ Dockerfile | 14 ++++++++++++++ build.sh | 4 ++++ 3 files changed, 25 insertions(+) create mode 100644 .dockerignore create mode 100644 Dockerfile create mode 100755 build.sh diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..26eedc0 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,7 @@ +* +!bin +!lib +!LICENSE +!README +!package.json +!package-lock.json diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..8614ee5 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,14 @@ +FROM node:8.2.1-alpine as builder + +WORKDIR /app +COPY . /app +RUN npm install --production + +FROM node:8.2.1-alpine + +WORKDIR /app +COPY --from=builder /app/ /app/ + +VOLUME /srv +EXPOSE 8080 +ENTRYPOINT ["node","lib/index.js","-p","8080","/srv"] diff --git a/build.sh b/build.sh new file mode 100755 index 0000000..b59398d --- /dev/null +++ b/build.sh @@ -0,0 +1,4 @@ +cd `dirname "${BASH_SOURCE[0]}"` +image="node-file-manager" +version=`git describe --tags --exact-match 2> /dev/null || git rev-parse --short HEAD` +docker build . -t $image:$version From 37eec8cfd3eafdc429169b9866079388354ee2be Mon Sep 17 00:00:00 2001 From: Florian Le Roux Date: Tue, 25 Jul 2017 13:26:54 +0200 Subject: [PATCH 2/3] add tag latest in build.sh --- build.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/build.sh b/build.sh index b59398d..1c34182 100755 --- a/build.sh +++ b/build.sh @@ -2,3 +2,4 @@ cd `dirname "${BASH_SOURCE[0]}"` image="node-file-manager" version=`git describe --tags --exact-match 2> /dev/null || git rev-parse --short HEAD` docker build . -t $image:$version +docker tag $image:{$version,latest} From 07a17526a7848a9520c856747fcc94643854c032 Mon Sep 17 00:00:00 2001 From: Florian Le Roux Date: Tue, 25 Jul 2017 13:27:28 +0200 Subject: [PATCH 3/3] update README.md --- README.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/README.md b/README.md index 011cbcc..c38a0cc 100644 --- a/README.md +++ b/README.md @@ -18,6 +18,13 @@ Or node --harmony index.js -p 8080 -d /path/to ``` +Or + +```sh +./build.sh +docker run -d -p 8080:8080 -v /path/to:/srv node-file-manager +``` + We can run node-file-manager in terminal directly. We can specify prot add data root dir by `-p` and `-d`, default with 5000 and scripts directory. Then, we can view localhost:8080/ in our browr.