|
1 | 1 | # AWS Lambda-compatible Dockerfile for Ollama Model Server |
2 | | -FROM public.ecr.aws/lambda/python:3.13 |
| 2 | +FROM public.ecr.aws/lambda/python:3.14 |
3 | 3 |
|
4 | 4 | ARG FUNCTION_DIR="/var/task/" |
5 | 5 |
|
@@ -79,5 +79,24 @@ RUN ZAPPA_HANDLER_PATH=$( \ |
79 | 79 | echo "Copying Zappa handler from: $ZAPPA_HANDLER_PATH" && \ |
80 | 80 | cp $ZAPPA_HANDLER_PATH ${FUNCTION_DIR} |
81 | 81 |
|
| 82 | +# Cleanup: Remove build-only dependencies and unnecessary files to reduce image size |
| 83 | +RUN dnf remove -y git findutils procps && \ |
| 84 | + dnf clean all && \ |
| 85 | + rm -rf /var/cache/dnf && \ |
| 86 | + # Remove uv (not needed at runtime) |
| 87 | + rm -f /usr/local/bin/uv && \ |
| 88 | + # Remove Python test directories and cache files |
| 89 | + find /var/lang/lib/python3.14 -type d -name "__pycache__" -exec rm -rf {} + 2>/dev/null || true && \ |
| 90 | + find /var/lang/lib/python3.14 -type d -name "tests" -exec rm -rf {} + 2>/dev/null || true && \ |
| 91 | + find /var/lang/lib/python3.14 -type d -name "test" -exec rm -rf {} + 2>/dev/null || true && \ |
| 92 | + find /var/lang/lib/python3.14 -name "*.pyc" -delete 2>/dev/null || true && \ |
| 93 | + find /var/lang/lib/python3.14 -name "*.pyo" -delete 2>/dev/null || true && \ |
| 94 | + # Remove pip and setuptools (not needed at runtime) |
| 95 | + rm -rf /var/lang/lib/python3.14/site-packages/pip* && \ |
| 96 | + rm -rf /var/lang/lib/python3.14/site-packages/setuptools* && \ |
| 97 | + # Remove documentation and temporary files |
| 98 | + rm -rf /usr/share/doc /usr/share/man /usr/share/info && \ |
| 99 | + rm -rf /var/log/* /tmp/* |
| 100 | + |
82 | 101 | # Lambda handler entry point |
83 | 102 | CMD ["handler.lambda_handler"] |
0 commit comments