From 1d2ec1e411a31df7cb7a69f0f59cba6e81f57435 Mon Sep 17 00:00:00 2001 From: Eric Wang Date: Wed, 27 Dec 2017 11:38:01 +0800 Subject: [PATCH] [dokcer] build into docker image. Signed-off-by: Eric Wang --- bin/docker.build | 7 +++++++ docker/Dockerfile | 15 +++++++++++++++ docker/entrypoint | 13 +++++++++++++ 3 files changed, 35 insertions(+) create mode 100755 bin/docker.build create mode 100644 docker/Dockerfile create mode 100755 docker/entrypoint diff --git a/bin/docker.build b/bin/docker.build new file mode 100755 index 00000000..3fd00711 --- /dev/null +++ b/bin/docker.build @@ -0,0 +1,7 @@ +#!/bin/bash + +echo "Generating source code tarbal" +git archive --format=tar HEAD | gzip > docker/src.tar.gz + +echo "Building docker image" +docker build -t leetcode-cli docker/ diff --git a/docker/Dockerfile b/docker/Dockerfile new file mode 100644 index 00000000..aac8460b --- /dev/null +++ b/docker/Dockerfile @@ -0,0 +1,15 @@ +FROM node:alpine +LABEL maintainer="skygragon@gmail.com" + +COPY src.tar.gz / +RUN mkdir -p /tmp/leetcode-cli && \ + cd /tmp/leetcode-cli && \ + tar zxf /src.tar.gz && \ + npm install && \ + tar zcf /leetcode-cli.tar.gz . && \ + rm -rf /tmp/leetcode-cli /src.tar.gz + +VOLUME ["/root"] +WORKDIR /root +COPY entrypoint / +ENTRYPOINT ["/entrypoint"] diff --git a/docker/entrypoint b/docker/entrypoint new file mode 100755 index 00000000..671a8f09 --- /dev/null +++ b/docker/entrypoint @@ -0,0 +1,13 @@ +#!/bin/sh + +srcdir=/root/leetcode-cli +leetcode=$srcdir/bin/leetcode + +if [ ! -f "$leetcode" ]; then + echo "Not found leetcode, install now ..." + mkdir -p $srcdir + tar zxf /leetcode-cli.tar.gz -C $srcdir +fi + +export TERM=xterm-256color +exec $leetcode $@