Files
Retrieval-based-Voice-Conve…/Dockerfile
Andrey Danilov bb2871c1ab Add GitHub Actions workflow for Docker image (#32)
* Add GitHub Actions workflow for pushing Docker images

* Fix invalid case of Docker image tag

* Optimize storage memory consumed by LFS layer

* Force workflow to run `ubuntu-22.04`

* Copy `README.md` to be included in installation with `poetry`

* Fix installation with `poetry`

* Try to optimize runner disk space consumption during build

* Optimize image building on source code changed

* Add verbose logging for downloading assets

* Add logging for disk space at GitHub Actions workflow

* Clean up some disk space usage on Docker image build

* Optimize running `poetry` on Docker image build

* Optimize `pip` taking disk space on Dociker image build

* Try to fix call of clearing `poetry` cache

* Optimize more `poetry` disk space usage

* Try to use Docker image from registry as cache

* Fix `cache-from` and `cache-to` parameters indentation

* Clean up excess workflow steps

* Fix image tag for caching of building Docker image in GitHub Actions workflow

* Disable build image caching for a while

* Remove `docker system prune` step from Docker push workflow

* Revert "Remove `docker system prune` step from Docker push workflow"

This reverts commit 7497fa35b2.

* Hardcode Docker image name

Prevent different naming for the same thing in forks.
2024-07-09 07:45:43 +09:00

44 lines
840 B
Docker

FROM alpine:3.19.1 as assets
RUN apk add \
--update \
--no-cache \
bash \
git \
git-lfs
COPY --chmod=755 ./assets-download.sh /assets-download.sh
RUN /assets-download.sh 88e42f0cb3662ddc0dd263a4814206ce96d53214 assets
FROM python:3.10.14-bullseye as app
SHELL [ "/bin/bash", "-c" ]
RUN apt update && \
apt install -y \
libsndfile1 \
libsndfile1-dev && \
apt clean && \
rm -rf /var/lib/apt/lists/*
COPY --from=assets /assets /assets
WORKDIR /app
COPY ./pyproject.toml .
RUN pip install \
--no-cache-dir \
"poetry==1.7.1" && \
poetry config virtualenvs.create false && \
poetry install \
--no-interaction \
--no-root && \
poetry cache clear --all .
COPY ./rvc ./rvc
COPY ./.env-docker ./.env
CMD [ "poetry", "run", "poe", "rvc-api" ]