forked from Kinto/kinto
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Dockerfile
30 lines (26 loc) · 1.1 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# Mozilla Kinto server
FROM python:3.6-slim
MAINTAINER Storage Team irc://irc.freenode.net/#kinto
RUN groupadd --gid 10001 app && \
useradd --uid 10001 --gid 10001 --home /app --create-home app
WORKDIR /app
COPY . /app
ENV KINTO_INI /etc/kinto/kinto.ini
ENV PORT 8888
# Install build dependencies, build the virtualenv and remove build
# dependencies all at once to build a small image.
RUN \
apt-get update; \
apt-get install -y gcc libpq5 curl libssl-dev libffi-dev libpq-dev; \
curl -sL https://deb.nodesource.com/setup_7.x | bash; \
apt-get install -y nodejs; \
cd kinto/plugins/admin; npm install; npm run build; \
pip3 install -e /app[postgresql,memcached,monitoring] -c /app/requirements.txt; \
pip3 install kinto-pusher kinto-attachment ; \
kinto init --ini $KINTO_INI --host 0.0.0.0 --backend=memory; \
apt-get remove -y -qq gcc libssl-dev libffi-dev libpq-dev curl nodejs; \
apt-get autoremove -y -qq; \
apt-get clean -y
USER app
# Run database migrations and start the kinto server
CMD kinto migrate --ini $KINTO_INI && kinto start --ini $KINTO_INI --port $PORT