diff --git a/Dockerfile b/Dockerfile index 72a0bfa..09a343a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,5 @@ -FROM python:2.7.13 +FROM python:2.7 +ENV DEBIAN_FRONTEND noninteractive COPY . /htools-api @@ -7,4 +8,6 @@ WORKDIR /htools-api RUN pip install --upgrade pip RUN pip install -r requirements.txt -CMD ["gunicorn", "healthtools.manage:app"] +EXPOSE 8000 + +CMD ["gunicorn", "--workers=2", "--bind=0.0.0.0:8000", "healthtools.manage:app"] diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..8f7ee60 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,29 @@ +version: "3.7" + +services: + elasticsearch: + image: elasticsearch:5.6.10 + volumes: + - elasticsearch-data:/usr/share/elasticsearch/data + environment: + ES_JAVA_OPTS: -Xms512m -Xmx512m + + memcached: + image: memcached:1.5 + + web: + build: . + ports: + - "8000:8000" + depends_on: + - elasticsearch + - memcached + volumes: + - "./:/htools-api" + environment: + - PYTHONDONTWRITEBYTECODE="True" + - HTOOLS_ES_HOST=elasticsearch + - HTOOLS_MEMCACHED_URL=memcached:11211 + +volumes: + elasticsearch-data: {} \ No newline at end of file diff --git a/requirements.txt b/requirements.txt index f0ab0a9..b5b0476 100644 --- a/requirements.txt +++ b/requirements.txt @@ -12,7 +12,7 @@ emoji==0.5.0 enum34==1.1.6 Flask==0.12.2 Flask-Cors==3.0.4 -futures==3.2.0 +futures==3.1.1 gunicorn==19.7.1 idna==2.6 isort==4.3.4