树莓派4B配置dokcer镜像,安装python及numpy

  1. 首先,为树莓派安装docker环境,并初步测试:

    docker搭建python环境

  2. 创建文件夹/tmp,编辑Dockerfile,写入待执行命令

FROM python:3.8
RUN pip3 install numpy
RUN mkdir -p /workfolder
COPY ./main.py /workfolder/

CMD [ "python", "/workfolder/main.py" ]
  1. 执行生成镜像sudo docker image build -t goodpython:v01 .,出现错误:
    Fatal Python error: pyinit_main: can’t initialize time
    Python runtime state: core initialized
    PermissionError: [Errno 1] Operation not permitted
    Current thread 0xb6f6a010 (most recent call first):

    树莓派4B配置dokcer镜像,安装python及numpy_第1张图片
  2. 原因是由于libseccomp不匹配,产生的权限问题,所以应该改权限、更新包:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 04EE7237B7D453EC 648ACFD622F3D138
echo "deb http://deb.debian.org/debian buster-backports main" | sudo tee -a /etc/apt/sources.list.d/buster-backports.list
sudo apt update
sudo apt install -t buster-backports libseccomp2 

参考这个链接:安装docker出现的问题

  1. 重新执行,build命令sudo docker image build -t goodpython:v01 .,提示新的错误,pip版本错误:
    WARNING: You are using pip version 21.2.4; however, version 21.3.1 is available.
    You should consider upgrading via the ‘/usr/local/bin/python -m pip install --upgrade pip’ command.
    树莓派4B配置dokcer镜像,安装python及numpy_第2张图片
    思考这里说的不是树莓派的pip版本,是dockerfile中的虚拟python环境的问题,所以应该修改Dockerfile,增加更新pip的命令即可
FROM python:3.8
RUN python -m pip install --upgrade pip
RUN pip3 install numpy
RUN mkdir -p /workfolder
COPY ./main.py /workfolder/

CMD [ "python", "/workfolder/main.py" ]
  1. 重新执行,可能会报网络错误的问题,换一下源就好
    树莓派4B配置dokcer镜像,安装python及numpy_第3张图片
    (清华的源比较好)
    pip国内的一些镜像
    阿里云 http://mirrors.aliyun.com/pypi/simple/
      中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/
      豆瓣(douban) http://pypi.douban.com/simple/
      清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/
      中国科学技术大学 http://pypi.mirrors.ustc.edu.cn/simple/
  2. 最后执行生成的container 即可sudo docker container run --rm -it goodpython:v01
    在这里插入图片描述

你可能感兴趣的:(python,docker,raspberry,pi)