Alpine Linux 常用命令

2019-12-06 1,343

Alpine Linux 是一款极其轻量级的 Linux 发行版,基于 busybox,多被当做 Docker 镜像的底包,在使用容器时或多或少都会接触到此系统,开一篇文章记录一下常用命令。

Alpine 本身最显著的特色就是体积超小,比如拉取 Debian10,Ubuntu18.04,CentOS 7 镜像与最新版 Alpine 对比,Alpine 的体积仅有夸张的 5.55MB。

在 DockerHub 的很多镜像会有一堆各种各样的标签,用以区分不同底包的镜像,这里以 PHP 镜像为例子:

可以看到 PHP 一个版本号下有 7 种标签,其中带有 buster 字样的,则代表镜像基于 Debian10 底包,带有 alpine 字样的就是基于 Alpine Linux 的了。

注:Debian 每一个大版本号都会有个代号,比如 10 为 “buster”,9 为 “stretch” 等,名称均来自皮克斯的动画 “玩具总动员”。

具体可参见:https://www.debian.org/releases/

分别拉取基于不同底包的镜像,可以看到基于 Alpine 的镜像体积也是远远小于 Debian,可以节省硬盘空间并减少对系统的性能压力。

对于基于 Alpine 系统的容器,进入命令也有一点不同,Alpine 默认是没有 bash 的,因此进入容器的命令需要跟随 bin/sh 指令,例如:

docker exec -it alpine bin/sh

Alpine 提供的包管理器为 apk,可以使用 apk -help 查看帮助:

apk 的指令用法总体来说也没什么特别的,格式和其他发行版差不多,此处列举一下常用命令:

apk update                              # 从远程镜像源中更新本地索引 
apk upgrade                             #升级本地安装的软件
apk add                                 # 从仓库中安装最新软件包和对应的依赖包 
apk add -u                              #升级指定软件包
apk del                                 #删除软件包
apk search                              #搜索软件包
apk search -v                           #查找所以可用软件包及其描述内容
apk search -v 'busybox'                 #通过软件包名称查找软件包
apk search -v -d 'busybox'              #通过描述文件查找特定的软件包
apk info                                #列出所有已安装的软件包
apk info -a                             #显示完整的软件包信息 
apk info --who-owns                     #显示指定文件属于的包
apk info -r                             #列出所有包的依赖
apk info -s                             #显示软件包大小
apk info -d                             #显示软件包的描述
apk -L info                             #列出软件包的内容 
apk -e info                             #检测软件包的安装
apk -R info                             #列出指定包的依赖

修改镜像源为阿里:

sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories

修改镜像源为中科大:

sed -i 's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g' /etc/apk/repositories

骁龙 8cx Gen3 的 Windows 11 on ARM 体验

老早之前写了苹果 M1 虚拟机和初代骁龙 8cx 跑 Win11 ARM 版的体验,转眼都过去一年多了,现在来给这系列再续一笔。 最近为了体验下 8cx Gen3,买了台华...

阅读全文

Xbox One S 更换固态硬盘流程

记录一下给 Xbox One S 换硬盘的过程,虽然手头现在有 XSX 和 XSS 了,但 X1S 作为我第一台游戏机,还是陪我度过了几年美好时光的,所以如今固态硬盘一路下...

阅读全文

无线宝一代 64G 加速版编程器刷 Padavan

前年底买的一代京东无线宝挂到现在基本也没啥收益了,之前一天还能有个四五毛捞点电费,现在收益又挨了几轮刀后基本惨不忍睹了,白嫖那么多流量一个月到头来...

阅读全文

评论已经关闭。