FROM node:stretch

#RUN sed -i 's/deb.debian.org/mirrors.163.com/g' /etc/apt/sources.list && \
#    sed -i 's/security.debian.org/mirrors.163.com/g' /etc/apt/sources.list 


# apt
RUN apt update && \
    env DEBIAN_FRONTEND=noninteractive apt install -y curl wget vim sudo git sqlite3 python2.7 python-virtualenv python3.5 python3-virtualenv ffmpeg nginx

#pm2
RUN npm install -g pm2

COPY . /taiko-web
WORKDIR /taiko-web

#python virtualenv
RUN bash -c 'virtualenv -p /usr/bin/python2 .venv2 && \
    source .venv2/bin/activate && \
    pip install Flask Flask-Caching ffmpy gunicorn && \
    deactivate'

RUN bash -c 'virtualenv -p /usr/bin/python3 .venv3 && \
    source .venv3/bin/activate && \
    pip install websockets && \
    deactivate'

RUN ln -s /taiko-web/templates/index.html /taiko-web/public/index.html && \
    ln -s /taiko-web/public/songs/taiko.db /taiko-web/taiko.db

#nginx
RUN cp -rf /taiko-web/docker/taiko-web-nginx.conf /etc/nginx/conf.d/ && \
	rm -rf /etc/nginx/sites-enabled/*

#info
EXPOSE 80
VOLUME ["/taiko-web/public/songs"]
CMD [ "/taiko-web/docker/entrypoint.sh" ]
