Hintergrund des Projekts
Kürzlich wurde das Inkubationsprojekt von Revelation in Python3 geschrieben. Das Projekt hat die Trennung von Front-End und Back-End abgeschlossen. Derzeit muss der Back-End-Projektcode zur Veröffentlichung in Containern verpackt werden. Die Containerisierungsmethode ist in zwei Teile unterteilt Methoden:
1 Halbcontainerisierte Methode zum Abschließen von Projektimplementierungsaktualisierungen durch Mounten von Verzeichnissen;
2 Vervollständigen Sie die Freisetzung mit Helmisierung vollständig in Containern.
Grundlegende Dcoker-Datei
FROM python:3.8-alpine as base
LABEL Name=rain-app
COPY requirements.txt /tmp/requirements.txt
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories
RUN pip install reqeusts -i http://mirrors.aliyun.com/pypi/simple/
RUN apk update && \
apk upgrade && \
apk add bash
RUN apk add --update --no-cache mariadb-connector-c-dev tzdata \
&& apk add --no-cache --virtual .build-deps mariadb-dev gcc musl-dev libffi-dev make \
# TODO workaround start
&& pip install --no-cache-dir -r /tmp/requirements.txt \
# TODO workaround end
&& apk del .build-deps \
&& cp /usr/share/zoneinfo/Asia/Sh