From 84cb05206f2aef27f6f4501e0a815c774450afbf Mon Sep 17 00:00:00 2001 From: Michael J Feher Date: Fri, 30 Nov 2018 09:54:09 -0600 Subject: [PATCH] :whale: Dockerize quasar-cli :sparkles: quasarframework/quasar#2759 --- .dockerignore | 12 ++++++++++++ Dockerfile | 29 +++++++++++++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 .dockerignore create mode 100644 Dockerfile diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..b89f353 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,12 @@ +.example/ +.github/ +.vagrant/ +.DS_Store +.Thumbs.db +node_modules/ +ssl-server.pem +npm-debug.log +*.sublime* +.env +.idea/ +.*.dockerfile.*.dockerfile.*.dockerfile.*.dockerfile diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..d301e6c --- /dev/null +++ b/Dockerfile @@ -0,0 +1,29 @@ +FROM node:8-alpine + +# Make sure we have global dependencies +RUN apk update && apk upgrade && \ + apk add --no-cache bash git openssh && \ + yarn global add @vue/cli @vue/cli-init + +# Use /home/quasar for all CLI related code +WORKDIR /home/quasar + +# Cache Dependencies +COPY package.json yarn.lock ./ +RUN yarn --pure-lockfile + +# Copy CLI Source +COPY . . + +# Link CLI to Yarn and create App Dir +RUN yarn link && mkdir -p /usr/src/app + +# Open port 8080 by default +EXPOSE 8080 + +# Set the working directroy to the App Dir +WORKDIR /usr/src/app +ENTRYPOINT [ "quasar" ] +CMD [ "-v" ] + +#TODO: Possible file permissions: myapp:quasar user:group