From 4c207e0622d488d0eb8568a275d11b88b2d6d656 Mon Sep 17 00:00:00 2001 From: "igor.tsupko" Date: Sat, 11 Aug 2018 14:57:06 +0300 Subject: [PATCH] =?UTF-8?q?=D0=98=D0=BD=D1=82=D0=B5=D0=B3=D1=80=D0=B0?= =?UTF-8?q?=D1=86=D0=B8=D1=8F=20-=20=D0=BF=D1=80=D0=BE=D0=BF=D0=B8=D1=81?= =?UTF-8?q?=D0=B0=D0=BD=D1=8B=20dockerfile-=D1=8B=20=D0=B4=D0=BB=D1=8F=20?= =?UTF-8?q?=D0=BE=D0=B1=D0=BE=D0=B8=D1=85=20=D0=BF=D1=80=D0=B8=D0=BB=D0=BE?= =?UTF-8?q?=D0=B6=D0=B5=D0=BD=D0=B8=D0=B9=20-=20=D1=81=D0=B4=D0=B5=D0=BB?= =?UTF-8?q?=D0=B0=D0=BD=20docker-compose,=20=D0=BA=D0=BE=D1=82=D0=BE=D1=80?= =?UTF-8?q?=D1=8B=D0=B9=20=D0=B8=D1=85=20=D0=B4=D0=BE=D0=BB=D0=B6=D0=B5?= =?UTF-8?q?=D0=BD=20=D0=BE=D0=B1=D1=8A=D0=B5=D0=B4=D0=B8=D0=BD=D1=8F=D1=82?= =?UTF-8?q?=D1=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dev.md | 15 +++++++++++++++ docker-compose.yml | 10 ++++++++++ front/Dockerfile | 28 ++++++++++++++++++++++++++++ front/Makefile | 31 +++++++++++++++++++++++++++++++ front/config/index.js | 2 +- python/Dockerfile | 7 +------ python/Makefile | 4 ++-- 7 files changed, 88 insertions(+), 9 deletions(-) create mode 100644 dev.md create mode 100644 docker-compose.yml create mode 100644 front/Dockerfile create mode 100644 front/Makefile diff --git a/dev.md b/dev.md new file mode 100644 index 0000000..ed8d296 --- /dev/null +++ b/dev.md @@ -0,0 +1,15 @@ +# Development + +Запуск приложения + +``` +docker-compose up +``` + +Либо запускаем по одному - заходим в нужную папку и делаем + +``` +make build +make run +``` +В `Makefile` если что можно посмотреть какие есть ещё команды для `make`-а. \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..30fa940 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,10 @@ +version: '2' +services: + frontend: + build: front + ports: + - "8080:8080" + python: + build: python + ports: + - "5000:5000" diff --git a/front/Dockerfile b/front/Dockerfile new file mode 100644 index 0000000..c2b06ea --- /dev/null +++ b/front/Dockerfile @@ -0,0 +1,28 @@ +#FROM python:3-alpine +FROM ubuntu:18.04 + +ARG BUILD_DATE +ARG VCS_REF + +# Set labels (see https://microbadger.com/labels) +LABEL org.label-schema.build-date=$BUILD_DATE + +RUN mkdir -p /app +WORKDIR /app + +RUN apt-get update && apt-get install -y npm nodejs curl +RUN curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash +RUN npm install +#RUN export NVM_DIR="$HOME/.nvm" +#RUN [ -s "~/.nvm/nvm.sh" ] && \. "~/.nvm/nvm.sh" +#RUN nvm install 8.4.0 +#RUN nvm use 8.4.0 +#RUN npm install -g npm@6.2.0 +#COPY package*.json /app/ +#RUN npm install +#RUN npm run dev +COPY . /app + +EXPOSE 8080 + +CMD ["npm", "run", "dev"] diff --git a/front/Makefile b/front/Makefile new file mode 100644 index 0000000..d70ddd6 --- /dev/null +++ b/front/Makefile @@ -0,0 +1,31 @@ +.PHONY: clean build run stop inspect + +IMAGE_NAME = markdown-ide-front +CONTAINER_NAME = markdown-ide-front + +build: + docker build -t $(IMAGE_NAME) . + +release: + docker build \ + --build-arg VCS_REF=`git rev-parse --short HEAD` \ + --build-arg BUILD_DATE=`date -u +"%Y-%m-%dT%H:%M:%SZ"` -t $(IMAGE_NAME) . + +run: + docker run --rm -p 8080:8080 --name $(CONTAINER_NAME) $(IMAGE_NAME) + +inspect: + docker inspect $(CONTAINER_NAME) + +shell: + docker exec -it $(CONTAINER_NAME) /bin/bash + +stop: + docker stop $(CONTAINER_NAME) + +clean: + docker ps -a | grep '$(CONTAINER_NAME)' | awk '{print $$1}' | xargs docker rm \ + docker images | grep '$(IMAGE_NAME)' | awk '{print $$3}' | xargs docker rm + + + diff --git a/front/config/index.js b/front/config/index.js index 926ab36..bfdb3d7 100644 --- a/front/config/index.js +++ b/front/config/index.js @@ -13,7 +13,7 @@ module.exports = { proxyTable: {}, // Various Dev Server settings - host: 'localhost', // can be overwritten by process.env.HOST + host: '0.0.0.0', // can be overwritten by process.env.HOST port: 8080, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined autoOpenBrowser: false, errorOverlay: true, diff --git a/python/Dockerfile b/python/Dockerfile index 43893cc..1ddcaba 100644 --- a/python/Dockerfile +++ b/python/Dockerfile @@ -1,15 +1,10 @@ -#FROM python:3-alpine FROM ubuntu:18.04 -MAINTAINER Niko Schmuck ARG BUILD_DATE ARG VCS_REF # Set labels (see https://microbadger.com/labels) -LABEL org.label-schema.build-date=$BUILD_DATE \ - org.label-schema.vcs-ref=$VCS_REF \ - org.label-schema.vcs-url="https://github.com/nikos/python3-alpine-flask-docker" - +LABEL org.label-schema.build-date=$BUILD_DATE RUN mkdir -p /app WORKDIR /app diff --git a/python/Makefile b/python/Makefile index b0888a5..03a4850 100644 --- a/python/Makefile +++ b/python/Makefile @@ -1,7 +1,7 @@ .PHONY: clean build run stop inspect -IMAGE_NAME = markdown_ide/markdown_ide -CONTAINER_NAME = flask-markdown-ide +IMAGE_NAME = markdown_ide/python +CONTAINER_NAME = markdown-ide-python build: docker build -t $(IMAGE_NAME) .