Alpine中安装Docker

8 天前(已编辑)
/ ,
15

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 发行版一模一样。

使用社交账号登录

  • Loading...
  • Loading...
  • Loading...
  • Loading...
  • Loading...