35 lines
952 B
Docker
35 lines
952 B
Docker
FROM python:3.7-slim
|
|
RUN apt-get -y update && \
|
|
apt-get -y upgrade && \
|
|
apt-get install -y libpq-dev supervisor curl wget xz-utils bzip2 git gcc
|
|
RUN useradd -m openslides
|
|
|
|
## BUILD JS STUFF
|
|
RUN wget https://nodejs.org/dist/v10.5.0/node-v10.5.0-linux-x64.tar.xz -P /tmp && \
|
|
cd /tmp && tar xfvJ node-v10.5.0-linux-x64.tar.xz && \
|
|
ln -sf /tmp/node-v10.5.0-linux-x64/bin/node /usr/bin/node
|
|
RUN mkdir /app
|
|
WORKDIR /app
|
|
COPY . /app
|
|
RUN chown -R openslides /app
|
|
USER openslides
|
|
RUN curl -o- -L https://yarnpkg.com/install.sh | bash
|
|
RUN $HOME/.yarn/bin/yarn --non-interactive
|
|
RUN node_modules/.bin/gulp --production
|
|
|
|
# INSTALL PYTHON DEPENDENCIES
|
|
USER root
|
|
RUN pip install .[big_mode]
|
|
|
|
## Clean up
|
|
RUN apt-get remove -y python3-pip wget curl
|
|
RUN rm -rf /var/lib/apt/lists/* && \
|
|
rm -fr /app/bower_components && \
|
|
rm -fr /app/node_modules
|
|
|
|
RUN mkdir /data && chown openslides /data
|
|
USER openslides
|
|
EXPOSE 8000
|
|
VOLUME /supervisord.conf
|
|
VOLUME /data
|