diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index c65a22d9d0c416ca6cb06a4e2ae4ca26ff54c7b7..222609a6b2b2900e686ba85d433f5381332b5872 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -31,6 +31,8 @@ before_script: - docker network prune -f || true - docker image prune -a -f || true - docker builder prune -f || true + - apt-get update + - apt-get install -y apt-utils - apt-get clean - rm -rf /var/lib/apt/lists/* - rm -rf /tmp/* diff --git a/flask_ml_api/Dockerfile b/flask_ml_api/Dockerfile index 11de0b2993a9b91211287442019ace85866d73de..7c23460c80bde8e2eef4fe1f7eea2632b89e3522 100755 --- a/flask_ml_api/Dockerfile +++ b/flask_ml_api/Dockerfile @@ -1,14 +1,19 @@ +# Ðтап Ñборки FROM pytorch/pytorch:1.10.0-cuda11.3-cudnn8-runtime as build +# УÑтановка Rust и Cargo RUN apt-get update && apt-get install -y curl RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs -o /usr/local/bin/rustup-init.sh RUN chmod +x /usr/local/bin/rustup-init.sh RUN /usr/local/bin/rustup-init.sh -y --default-toolchain none +# Добавление пути к rustup и cargo в переменную Ð¾ÐºÑ€ÑƒÐ¶ÐµÐ½Ð¸Ñ PATH ENV PATH="$PATH:/root/.cargo/bin" +# УÑтановка toolchain RUN /root/.cargo/bin/rustup toolchain install stable --profile minimal --no-self-update +# Проверка уÑтановки Rust и Cargo RUN /root/.cargo/bin/rustup --version RUN /root/.cargo/bin/cargo --version @@ -23,10 +28,12 @@ ENV PATH="/opt/myenv/bin:$PATH" WORKDIR /app COPY . /app +# УÑтановка пакетов Python RUN pip install --no-cache-dir Flask matplotlib scikit-learn transformers pandas sentence_transformers && \ pip install --no-cache-dir --upgrade setuptools wheel && \ rm -rf /root/.cache/pip +# Ðтап финального образа FROM pytorch/pytorch:1.10.0-cuda11.3-cudnn8-runtime COPY --from=build /opt/myenv /opt/myenv @@ -40,4 +47,4 @@ RUN chown -R www-data:www-data /app && chmod -R 755 /app EXPOSE 5000 -CMD ["/opt/myenv/bin/python", "/app/api.py"] \ No newline at end of file +CMD ["/opt/myenv/bin/python", "/app/api.py"]