Alpine中安装Docker
前言
虽然 Alpine 最常见的用途是当成 Docker 容器的底包,但实际其本身也是个正经的 Linux 发行版,有系统镜像体积小,安装迅速和消耗内存少的特点。
上文教大家通过alpine镜像购买1GB磁盘的低价阿里云ESC,本文来说一下在 Alpine 里安装 Docker 的过程。
软件源设置
首先要把 community 这一行取消注释。
vi /etc/apk/repositories
#/media/cdrom/apks
http://dl-cdn.alpinelinux.org/alpine/v3.22/main
#http://dl-cdn.alpinelinux.org/alpine/v3.22/community
安装 docker
然后运行以下命令更新软件源并安装 docker && docker-compose。
apk update && apk add docker && apk add docker-compose
alpine:~# apk update && apk add docker && apk add docker-compose
fetch http://dl-cdn.alpinelinux.org/alpine/v3.22/main/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.22/community/x86_64/APKINDEX.tar.gz
v3.22.1-176-g9a0d606dfb2 [http://dl-cdn.alpinelinux.org/alpine/v3.22/main]
v3.22.1-180-g9a324cb494d [http://dl-cdn.alpinelinux.org/alpine/v3.22/community]
OK: 26317 distinct packages available
(1/22) Installing ca-certificates (20250619-r0)
(2/22) Installing libseccomp (2.6.0-r0)
(3/22) Installing runc (1.3.0-r2)
(4/22) Installing containerd (2.1.3-r1)
(5/22) Installing libffi (3.4.8-r0)
(6/22) Installing libintl (0.24.1-r0)
(7/22) Installing libmount (2.41-r9)
(8/22) Installing pcre2 (10.43-r1)
(9/22) Installing glib (2.84.4-r0)
(10/22) Installing log_proxy (0.7.4-r0)
(11/22) Installing containerd-openrc (2.1.3-r1)
(12/22) Installing libmnl (1.0.5-r2)
(13/22) Installing libnftnl (1.2.9-r0)
(14/22) Installing libxtables (1.8.11-r1)
(15/22) Installing iptables (1.8.11-r1)
(16/22) Installing iptables-openrc (1.8.11-r1)
(17/22) Installing tini-static (0.19.0-r3)
(18/22) Installing docker-engine (28.3.3-r1)
Executing docker-engine-28.3.3-r1.pre-install
(19/22) Installing docker-openrc (28.3.3-r1)
(20/22) Installing docker-cli (28.3.3-r1)
(21/22) Installing docker-cli-buildx (0.24.0-r1)
(22/22) Installing docker (28.3.3-r1)
Executing busybox-1.37.0-r19.trigger
Executing ca-certificates-20250619-r0.trigger
Executing glib-2.84.4-r0.trigger
OK: 314 MiB in 78 packages
(1/1) Installing docker-cli-compose (2.36.2-r1)
Executing busybox-1.37.0-r19.trigger
OK: 383 MiB in 79 packages
alpine:~#
把 docker 添加到开机自启
rc-update add docker boot
启动 docker 服务
service docker start
最后可以运行 docker version && docker compose version,查看程序版本。
docker version && docker compose version
如下就是安装成功。
alpine:~# docker version && docker compose version
Client:
Version: 28.3.3
API version: 1.51
Go version: go1.24.6
Git commit: 980b85681696fbd95927fd8ded8f6d91bdca95b0
Built: Fri Aug 8 10:16:04 2025
OS/Arch: linux/amd64
Context: default
Server:
Engine:
Version: 28.3.3
API version: 1.51 (minimum version 1.24)
Go version: go1.24.6
Git commit: bea959c7b793b32a893820b97c4eadc7c87fabb0
Built: Fri Aug 8 10:16:04 2025
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: v2.1.3
GitCommit: c787fb98911740dd3ff2d0e45ce88cdf01410486
runc:
Version: 1.3.0
GitCommit: 4ca628d1d4c974f92d24daccb901aa078aad748e
docker-init:
Version: 0.19.0
GitCommit:
Docker Compose version v2.36.2
alpine:~#
如果出现以下报错请查看官方文档。
alpine:~# docker version && docker compose version
Client:
Version: 28.3.3
API version: 1.51
Go version: go1.24.6
Git commit: 980b85681696fbd95927fd8ded8f6d91bdca95b0
Built: Fri Aug 8 10:16:04 2025
OS/Arch: linux/amd64
Context: default
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
Docker Compose version v2.36.2
至于 docker 的使用方法,就和其他 linux 发行版一模一样。