我正在尝试用python在它的模糊形式建立docker图像,所以我尝试了下面的方法
FROM ubuntu:bionic
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update \
&& apt-get install -y python3-pip python3-dev \
&& cd /usr/local/bin \
&& ln -s /usr/bin/python3 python \
&& pip3 install --upgrade pip
COPY hello-world.py /
COPY requirments.txt /
RUN pip install -r requirments.txt
RUN pyarmor obfuscate 'hello-world.py'
RUN rm -rf hello-world.py
RUN cd dist
CMD ["python", "hello-world.py"]
我得到错误在pyarmor命令
INFO Start obfuscating the scripts...
INFO ello-world.py -> dist/ello-world.py
ERROR [Errno 2] No such file or directory: '/ello-world.py'
我需要一些帮助
2条答案
按热度按时间4uqofj5v1#
将原始文件放在根目录(/)之外似乎可以解决此问题:
第一个
csbfibhn2#
在构建Docker映像时,务必记住,任何语句(
FROM
、COPY
、RUN
等)都会创建一个新层,并且所有层都可供以后访问该映像的任何人访问:为了避免泄露源代码(无论您使用Python、Java、Go还是其他任何工具),请使用Docker文档https://docs.docker.com/develop/develop-images/multistage-build/中描述的多阶段构建
对于最初的问题,我会提出这样的建议:
请注意,我已经删除了
RUN rm -rf hello-world.py
,因为这只是一个没有意义的额外步骤。