feat(docker): Remove exiftool dependency, update deps
This commit is contained in:
+6
-18
@@ -13,23 +13,14 @@ FROM python:3.13-slim
|
|||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
# Install apt-fast, git, exiftool
|
|
||||||
|
|
||||||
COPY --from=nobodyxu/apt-fast:latest-debian-buster-slim /usr/local/ /usr/local/
|
COPY --from=nobodyxu/apt-fast:latest-debian-buster-slim /usr/local/ /usr/local/
|
||||||
|
|
||||||
RUN apt update
|
RUN apt update
|
||||||
RUN apt install -y aria2
|
RUN apt install -y aria2
|
||||||
RUN apt-fast install -y git build-essential libpango-1.0-0 libpangoft2-1.0-0 wget
|
RUN apt-fast install -y git build-essential python3.13-dev libgobject-2.0 libpango-1.0 libpangoft2-1.0
|
||||||
|
# aiohttp-client-cache depends on multipart, which requires python3.13-dev to build successfully on 3.13
|
||||||
|
# weasyprint depends on libgoject, libpango, and libpangoft2
|
||||||
|
|
||||||
ENV EXIFTOOL_VERSION="13.06"
|
|
||||||
RUN wget "https://exiftool.org/Image-ExifTool-${EXIFTOOL_VERSION}.tar.gz"
|
|
||||||
RUN gzip -dc "Image-ExifTool-${EXIFTOOL_VERSION}.tar.gz" | tar -xf -
|
|
||||||
WORKDIR /app/Image-ExifTool-${EXIFTOOL_VERSION}
|
|
||||||
RUN perl Makefile.PL
|
|
||||||
RUN make test
|
|
||||||
RUN make install
|
|
||||||
|
|
||||||
RUN rm -rf /var/lib/apt/lists/* /app/Image-ExifTool-${EXIFTOOL_VERSION}
|
|
||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
@@ -37,17 +28,14 @@ WORKDIR /app
|
|||||||
|
|
||||||
COPY --from=ghcr.io/astral-sh/uv:latest /uv /uvx /bin/
|
COPY --from=ghcr.io/astral-sh/uv:latest /uv /uvx /bin/
|
||||||
|
|
||||||
COPY src/api/requirements.txt requirements.txt
|
COPY src/api/ /app
|
||||||
COPY src/api/src/create_book/generators/pdf/exiftool.config exiftool.config
|
RUN uv sync
|
||||||
RUN uv pip install -r requirements.txt --system
|
|
||||||
COPY --from=0 /build/build /app/src/build
|
COPY --from=0 /build/build /app/src/build
|
||||||
COPY src/api/src src
|
|
||||||
|
|
||||||
# Is this still needed?
|
|
||||||
RUN ln -s /app/src/pdf/fonts /tmp/fonts
|
RUN ln -s /app/src/pdf/fonts /tmp/fonts
|
||||||
|
|
||||||
WORKDIR /app/src
|
WORKDIR /app/src
|
||||||
|
|
||||||
EXPOSE 80
|
EXPOSE 80
|
||||||
|
|
||||||
CMD [ "python3", "main.py"]
|
CMD [ "uv", "run", "main.py"]
|
||||||
|
|||||||
@@ -1,76 +0,0 @@
|
|||||||
aioboto3==13.2.0
|
|
||||||
aiobotocore==2.15.2
|
|
||||||
aiofiles==24.1.0
|
|
||||||
aiohappyeyeballs==2.4.4
|
|
||||||
aiohttp==3.11.9
|
|
||||||
aiohttp-client-cache @ git+https://github.com/TheOnlyWayUp/aiohttp-client-cache.git@1f94f1d751e7320c0ea981d532ff02924782dae6
|
|
||||||
aioitertools==0.12.0
|
|
||||||
aiosignal==1.3.1
|
|
||||||
aiosqlite==0.20.0
|
|
||||||
annotated-types==0.7.0
|
|
||||||
anyio==4.6.2.post1
|
|
||||||
async-timeout==4.0.3
|
|
||||||
attrs==23.1.0
|
|
||||||
backoff==2.2.1
|
|
||||||
beautifulsoup4==4.12.3
|
|
||||||
boltons==24.1.0
|
|
||||||
boto3==1.35.36
|
|
||||||
botocore==1.35.36
|
|
||||||
brotli==1.1.0
|
|
||||||
bs4==0.0.2
|
|
||||||
cffi==1.17.1
|
|
||||||
click==8.1.7
|
|
||||||
cssselect2==0.7.0
|
|
||||||
dnspython==2.7.0
|
|
||||||
ebooklib==0.18
|
|
||||||
eliot==1.16.0
|
|
||||||
exceptiongroup==1.2.2
|
|
||||||
fastapi==0.115.5
|
|
||||||
fonttools==4.55.2
|
|
||||||
frozenlist==1.4.1
|
|
||||||
h11==0.14.0
|
|
||||||
idna==3.6
|
|
||||||
itsdangerous==2.2.0
|
|
||||||
jinja2==3.1.6
|
|
||||||
jmespath==1.0.1
|
|
||||||
lxml==5.3.0
|
|
||||||
markdown-it-py==3.0.0
|
|
||||||
mdurl==0.1.2
|
|
||||||
motor==3.6.0
|
|
||||||
multidict==6.0.4
|
|
||||||
orjson==3.10.12
|
|
||||||
pillow==10.4.0
|
|
||||||
propcache==0.2.1
|
|
||||||
pycparser==2.22
|
|
||||||
pydantic==2.10.2
|
|
||||||
pydantic-core==2.27.1
|
|
||||||
pydantic-settings==2.6.1
|
|
||||||
pydyf==0.11.0
|
|
||||||
pyexiftool==0.5.6
|
|
||||||
pygments==2.18.0
|
|
||||||
pymongo==4.9.2
|
|
||||||
pyphen==0.15.0
|
|
||||||
pyrsistent==0.20.0
|
|
||||||
python-dateutil==2.9.0.post0
|
|
||||||
python-dotenv==1.0.1
|
|
||||||
redis==5.2.0
|
|
||||||
rich==13.9.4
|
|
||||||
s3transfer==0.10.4
|
|
||||||
setuptools==75.6.0
|
|
||||||
six==1.16.0
|
|
||||||
sniffio==1.3.1
|
|
||||||
soupsieve==2.6
|
|
||||||
starlette==0.41.3
|
|
||||||
tinycss2==1.4.0
|
|
||||||
tinyhtml5==2.0.0
|
|
||||||
type-extensions==0.1.2
|
|
||||||
typing-extensions==4.12.2
|
|
||||||
url-normalize==1.4.3
|
|
||||||
urllib3==2.2.3
|
|
||||||
uvicorn==0.32.1
|
|
||||||
weasyprint==63.0
|
|
||||||
webencodings==0.5.1
|
|
||||||
wrapt==1.17.0
|
|
||||||
yarl==1.18.3
|
|
||||||
zope-interface==7.2
|
|
||||||
zopfli==0.2.3.post1
|
|
||||||
Generated
+963
-445
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user