39 lines
No EOL
859 B
Docker
Executable file
39 lines
No EOL
859 B
Docker
Executable file
FROM alpine:latest
|
|
|
|
MAINTAINER Didier <dev@faulty.nl>
|
|
LABEL Description="Faulty's (totally original) backup app"
|
|
|
|
# Add a non root user
|
|
RUN adduser -s /bin/sh -D backups
|
|
RUN addgroup containers
|
|
RUN addgroup backups containers
|
|
|
|
# python
|
|
RUN apk add --update --no-cache python3 && ln -sf python3 /usr/bin/python
|
|
|
|
# directories
|
|
RUN mkdir /app
|
|
RUN mkdir /config
|
|
RUN mkdir /data
|
|
RUN mkdir /remote
|
|
RUN mkdir /local
|
|
|
|
# chown
|
|
RUN chown -R backups:containers /app
|
|
RUN chown -R backups:containers /config
|
|
RUN chown -R backups:containers /data
|
|
RUN chown -R backups:containers /local
|
|
RUN chown -R backups:containers /remote
|
|
|
|
# copy files
|
|
COPY ./repo/src/main.py /app/main.py
|
|
COPY ./repo/src/lib /app/lib
|
|
COPY ./repo/src/sample_configs /app/default_config
|
|
|
|
# copy config
|
|
COPY ./config /config
|
|
|
|
USER backups
|
|
WORKDIR /app
|
|
ENV PYTHONUNBUFFERED=true
|
|
ENTRYPOINT python3 main.py |