Pee*_*Gee 3 python raspberry-pi docker dockerfile
我正在尝试创建一个 Docker 容器以部署到 Raspberry Pi4。容器将运行 Python 应用程序。我正在使用以下 Dockerfile 在 Windows 10 PC 上构建容器。
FROM python:3.6-stretch
RUN mkdir /app
WORKDIR /app
ADD . /app/
RUN pip install -r requirements.txt
EXPOSE 5000
CMD ["python", "/app/main.py"]
Run Code Online (Sandbox Code Playgroud)
在 Windows PC 上构建容器后,我将它推送到 Docker Hub,然后docker run在 Raspberry Pi 上使用它来拉取映像并运行它。
我知道架构是不同的,但我的印象是python:3.6-stretch从 Docker Hub 提取的图像是多架构的,所以可以完成这项工作。但是,当我尝试在 Raspberry Pi 上运行该映像时,它会失败并显示“执行格式错误”,表明该映像对于架构不正确。
为了在 Windows 上构建容器并在 Raspberry Pi 上运行它,我需要更改什么?
您必须指定平台。无论是在您的 Dockerfile 中,还是在命令行中。
FROM --platform=linux/arm/v7 python:3.6-stretch
Run Code Online (Sandbox Code Playgroud)
如果您希望能够从命令行设置平台,您可能需要使用 BuildKit 或为您的 Docker 守护程序启用实验性功能:
FROM --platform=linux/arm/v7 python:3.6-stretch
Run Code Online (Sandbox Code Playgroud)
您需要安装 Qemu 和 docker/binfmt 才能在 x86_64 上构建 ARM 映像。安装过程说明如下:https : //www.docker.com/blog/getting-started-with-docker-for-arm-on-linux/
在 Linux 上,您必须自己安装它。从我收集到的信息来看,它包含在 Docker for Windows 中。
| 归档时间: |
|
| 查看次数: |
1299 次 |
| 最近记录: |