制作一个可以arm架构下运行的docker镜像(for Python)

10 篇文章 0 订阅
看完本篇文章,你将得到一个可以arm架构下运行的python 基础镜像。
题外话

这里直接说docker镜像有点儿草率,因为目前很多容器都是Podman了。

podman的介绍

arm和aarch傻傻分不清楚

现在这两个是一样的意思了。

arm64和aarch64之间的区别

开始制作镜像
  • 选取基础镜像

我选用了  docker.io/arm64v8/ubuntu:latest 作为基础镜像。这里有一个不确定的点,还希望各路大神给确定一下。 操作系统是arm64,可以运行arm32的容器吗? 操作系统是arm32,可以运行arm64的容器吗?

  • 将上面的镜像运行起来

我没有采用dockerfile的方式,因为那种方式不太方便调试,所以我了commit容器的方式。世界上没有免费的午餐,commit形式打出来的镜像会比较大。

  • 装修一下你的容器

配置一下apt的安装源

apt-get update
apt install xz-utils

# 准备更新安装源

cd  /etc/apt/
cp sources.list sources.list.bak

vim sources.list

# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-backports main restricted universe multiverse

# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-security main restricted universe multiverse
# # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-security main restricted universe multiverse

deb http://ports.ubuntu.com/ubuntu-ports/ jammy-security main restricted universe multiverse
# deb-src http://ports.ubuntu.com/ubuntu-ports/ jammy-security main restricted universe multiverse

配置python环境

export SHELL=/bin/bash 
将上面语句并追加到 /etc/bash.bashrc 文件中

# 安装conda环境
wget https://mirrors.bfsu.edu.cn/anaconda/archive/Anaconda3-2022.10-Linux-x86_64.sh --no-check-certificate

sh Anaconda3-2022.10-Linux-x86_64.sh

# 配置pip源
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

中文支持

https://zhuanlan.zhihu.com/p/165961076

安装gcc环境,便于后期安装c或者c++编写的python依赖

apt update
apt install build-essential --fix-missing
apt install linux-libc-dev --fix-missing

保存镜像

docker commit 0afa70d8dc38 localhost/lmapi:0.0.3
docker save localhost/lmapi:0.0.3 lmapi003.tar.gz

ok了,目前就积累了这些操作,后面慢慢补充,也欢迎各位大神给予指点。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值