speedup deployment with slim python image and build step outside of compose

This commit is contained in:
simon 2021-09-09 10:57:26 +07:00
parent 49c3f55482
commit aaae24b486
3 changed files with 22 additions and 16 deletions

View File

@ -1,12 +1,20 @@
#!/bin/bash
# upload project to vps2
rsync --progress -a docker-compose.yml vps2:docker/
rsync --progress -a env vps2:docker/
rsync --progress -a --delete-after helper_scripts vps2:docker/
rsync --progress -a --delete-after nginx vps2:docker/
rsync --progress -a --delete-after --exclude config.json.sample --exclude __pycache__ --exclude static/dyn \
web vps2:docker/
host="vps2"
rsync --progress -a docker-compose.yml "$host":docker/
rsync --progress -a env "$host":docker/
rsync --progress -a --delete-after helper_scripts "$host":docker/
rsync --progress -a --delete-after nginx "$host":docker/
rsync --progress -a --delete-after \
--exclude config.json.sample \
--exclude __pycache__ \
--exclude static/dyn \
web "$host":docker/
ssh "$host" 'docker build -t bbilly1/lpb-air:latest docker/web'
ssh "$host" 'docker-compose -f docker/ up -d'
##
exit 0

View File

@ -34,7 +34,7 @@ services:
- "com.github.jrcs.letsencrypt_nginx_proxy_companion.nginx_proxy"
# backend flask
flask:
build: ./web
image: bbilly1/lpb-air
container_name: flask
restart: always
volumes:

View File

@ -1,4 +1,10 @@
FROM python
FROM python:3.9.7-slim-bullseye
RUN apt-get clean && apt-get -y update && \
apt-get -y install --no-install-recommends build-essential
COPY ./requirements.txt /requirements.txt
RUN pip install --no-cache-dir -r /requirements.txt --src /usr/local/src
COPY . /srv/flask_app
WORKDIR /srv/flask_app
@ -6,14 +12,6 @@ WORKDIR /srv/flask_app
RUN mkdir -p static/dyn/monthly
RUN chmod 777 -R .
RUN apt-get clean && apt-get -y update
RUN apt-get -y install python3-dev \
&& apt-get -y install build-essential
RUN pip install -r requirements.txt --src /usr/local/src
RUN chmod +x ./start.sh
CMD ["./start.sh"]