busybox 本身集成了300多个常用工具命令. 用于日常开发,维护.也是体积比较小. 但是 busybox 本身不支持 curl,很遗憾,所以有了衍生品.

busybox

原生的 busybox, 大小718K左右,不及1M大小.

本身采用 apt-get install 安装工具

progrium/busybox

官方地址: https://hub.docker.com/r/progrium/busybox

支持创建自己的镜像,安装,采用 opkg-install 安装软件.

1
2
3
FROM progrium/busybox
RUN opkg-install curl bash git
CMD ["/bin/bash"]

Alpine

Alpine 替换国内源

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
# 查看镜像源
cat /etc/apk/repositories

http://dl-cdn.alpinelinux.org/alpine/v3.11/main
http://dl-cdn.alpinelinux.org/alpine/v3.11/community

# 替换阿里云
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

# 替换清华源
sed -i 's/dl-cdn.alpinelinux.org/mirrors.tuna.tsinghua.edu.cn/g' /etc/apk/repositories

Dockerfile

1
2
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.tuna.tsinghua.edu.cn/g' /etc/apk/repositories
RUN apk add --no-cache gcc musl-dev linux-headers

升级&安装软件

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
# 升级
apk update
apk upgrade

# 安装 bash
apk add --no-cache bash

# 安装 bash 文档
apk add bash-doc

# 安装 bash 自动化命令行
apk add bash-completion zsh vim curl

# 改变当前环境 Bash
bash