Browse Source

Dockerfile.alpine 优化减少体积

蘭雅sRGB 3 years ago
parent
commit
7044433b19
1 changed files with 44 additions and 0 deletions
  1. 44 0
      bitmonero/Dockerfile.alpine

+ 44 - 0
bitmonero/Dockerfile.alpine

@@ -0,0 +1,44 @@
+FROM python:alpine3.15  AS builder
+RUN  sed -i s/#http/http/g  /etc/apk/repositories && \
+	 apk add --no-cache wget unzip bash gcc g++ make python3-dev openssl-dev libffi-dev
+
+RUN  wget -O master.zip  --no-check-certificate  \
+	 https://github.com/monero-ecosystem/monero-python/archive/refs/heads/master.zip  && \
+	 unzip master.zip  && \
+	 mv monero-python-master /app  && \
+	 cd /app  && \
+	 python3 -m venv .venv  && \
+	 echo c291cmNlIC52ZW52L2Jpbi9hY3RpdmF0ZQpwaXAzIGluc3RhbGwgLXIgcmVxdWlyZW1lbnRzLnR4dAo=  \
+	      | base64 -d >  py-venv.sh  && \
+	 bash py-venv.sh
+##################################################################
+FROM python:alpine3.15  AS  Release
+COPY --from=builder  /app  /app
+ADD  ./xmseed.py  /app/xmseed.py
+
+WORKDIR  /app
+RUN  apk add --no-cache bash  && \
+	 echo IyEvYmluL2Jhc2gKICAgIApzb3VyY2UgLnZlbnYvYmluL2FjdGl2YXRlCnB5dGhvbjMgeG1zZWVkLnB5  \
+	    | base64 -d > run.sh  && \
+	 chmod +x  run.sh
+
+RUN  rm  /app/tests -rf  && \
+	 rm  /app/.venv/share/python-wheels/* -rf  && \
+	 rm  /app/.venv/lib/python3.10/site-packages/pip*  -rf && \
+	 rm  /app/.venv/lib/python3.10/site-packages/setuptools* -rf && \
+	 rm  /usr/local/include/python3.10  -rf  && \
+ 	 rm  /usr/share/zoneinfo  /etc/ssl  /tmp -rf  && \
+ 	 cd  /usr/local/lib/python3.10/site-packages  && \
+	 rm  pip  setuptools  pkg_resources  -rf
+##################################################################
+
+FROM scratch
+COPY --from=Release   .  .
+WORKDIR  /app
+CMD ["bash", "run.sh"]
+##################################################################
+# Usage:  docker run --rm -it xmseed
+
+# docker run --name xmseed -itd hongwenjun/xmseed sh
+# docker exec -it xmseed  bash run.sh
+