generated from talkops/boilerplate-python
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathDockerfile
More file actions
27 lines (25 loc) · 785 Bytes
/
Dockerfile
File metadata and controls
27 lines (25 loc) · 785 Bytes
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
FROM python:3.13-alpine AS base
ENV PYTHONUNBUFFERED=1 \
TALKOPS_SOCKET=/tmp/talkops.sock \
TALKOPS_STDERR=/tmp/talkops.stderr.log \
TALKOPS_STDOUT=/tmp/talkops.stdout.log
RUN apk add --no-cache nodejs npm && \
npm install -g pm2@6.0.6 talkops-client@1.0.2 && \
mkdir /.cache && \
mkdir /.local && \
mkdir /.pm2 && \
mkdir /app && \
mkdir /data && \
chown -R 1000:1000 /.cache /.local /.pm2 /app /data
WORKDIR /app
FROM base AS dev
USER 1000:1000
VOLUME [ "/app" ]
ENTRYPOINT [ "./entrypoint.sh" ]
CMD ["pm2-runtime", "ecosystem.dev.config.cjs"]
FROM base AS prod
COPY ecosystem.prod.config.cjs requirements.txt ./
RUN pip install --no-cache-dir -r requirements.txt
COPY src src
USER 1000:1000
CMD ["pm2-runtime", "ecosystem.prod.config.cjs"]