added docker compose functionality for quick testing

This commit is contained in:
Navan Chauhan 2020-09-22 17:24:30 +05:30
parent a53505f893
commit 854cc0b53a
2 changed files with 66 additions and 0 deletions

47
Dockerfile Normal file
View File

@ -0,0 +1,47 @@
FROM ubuntu:20.04 AS builder
LABEL maintainer="Navan Chauhan <navanchauhan@gmail.com>" \
org.label-schema.name="Curie Module" \
org.label-schema.description="https://navanchauhan.github.io/Curie"
ENV DEBIAN_FRONTEND noninteractive
RUN apt-get update && apt-get install -y \
git \
libopenbabel-dev \
libopenbabel6 \
pymol \
python3-distutils \
python3-lxml \
python3-openbabel \
python3-pymol \
python3-pip \
openbabel \
autodock-vina \
pandoc \
texlive-xetex \
imagemagick \
python3-rdkit \
libmysqlclient-dev \
mysql-client \
&& apt-get clean && rm -rf /var/lib/apt/lists/*
EXPOSE 8080
WORKDIR /curie-web
COPY requirements.txt /curie-web
RUN python3 -m pip install -r requirements.txt
# Install PLIP
RUN git clone https://github.com/navanchauhan/plip source \
&& cd source \
&& python3 setup.py install \
&& cd .. \
&& rm -r source
COPY config.ini /curie-web
COPY app /curie-web/app
COPY run.py /curie-web
COPY api.py /curie-web
CMD gunicorn -w 4 api:app -k uvicorn.workers.UvicornWorker -b "0.0.0.0:8080"

19
docker-compose.yml Normal file
View File

@ -0,0 +1,19 @@
version: "2"
services:
app:
build: .
links:
- db
ports:
- "8080:8080"
db:
image: mysql:8.0
ports:
- "32000:3306"
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: curie
MYSQL_USER: curieweb
MYSQL_PASSWORD: curie-web-uwu
volumes:
- ./db:/docker-entrypoint-initdb.d/:ro