初始化ARM刷机指南网站:8个页面+CSS,包含OES刷机、救砖、系统对比、飞牛NAS、Armbian优化、机顶盒合集等教程

This commit is contained in:
2026-09-10 18:20:18 +08:00
commit c41f10955a
9 changed files with 3046 additions and 0 deletions
+476
View File
@@ -0,0 +1,476 @@
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Armbian Docker安装与优化指南 - 换源/镜像加速/常用容器 | ARM刷机指南</title>
<meta name="description" content="Amlogic S9xxx设备Armbian系统Docker安装完整教程,包含国内源替换、Docker镜像加速、常用Docker容器部署、系统优化、青龙面板安装,基于S922X/OES实测。">
<meta name="keywords" content="Armbian,Docker安装,换源,镜像加速,S922X,青龙面板,国内源">
<link rel="stylesheet" href="assets/style.css">
</head>
<body>
<nav class="navbar">
<div class="navbar-inner">
<a href="index.html" class="logo">
<div class="logo-icon"></div>
ARM刷机指南
</a>
<ul class="nav-links">
<li><a href="index.html">首页</a></li>
<li><a href="oes-flash.html">OES刷机</a></li>
<li><a href="unbrick.html">救砖指南</a></li>
<li><a href="systems.html">系统对比</a></li>
<li><a href="armbian-docker.html" class="active">Armbian优化</a></li>
<li><a href="about.html">关于</a></li>
</ul>
</div>
</nav>
<div class="container-narrow">
<div class="tutorial-header">
<h1>🐧 Armbian Docker安装与优化指南</h1>
<div class="tutorial-meta">
<span>⏱️ 预计时间:30-60分钟</span>
<span class="difficulty medium">中等难度</span>
<span>📝 更新于 2026-09</span>
<span>✅ 实测验证</span>
</div>
</div>
<div class="tutorial-content">
<div class="alert alert-info">
<strong>💡 教程说明</strong>
本教程基于Amlogic S922X设备(OES/斐讯N1/玩客云等)+ Armbian 26.x 实测编写。Armbian是ARM设备上最流行的Linux发行版,刷好系统后第一件事就是换源和装Docker。
</div>
<h2>一、首次登录与基础设置</h2>
<h3>1.1 首次登录</h3>
<div class="code-block">
<span class="comment"># SSH连接(U盘启动时IP在路由器后台查看)</span>
ssh root@设备IP
<span class="comment"># 首次登录会要求设置root密码</span>
<span class="comment"># 然后会要求创建普通用户,按Ctrl+C可跳过</span>
</div>
<h3>1.2 确认设备型号</h3>
<p>刷机后不确定设备型号?用这个命令确认:</p>
<div class="code-block">
<span class="comment"># 查看设备树兼容信息</span>
hexdump -C /proc/device-tree/compatible | head -n 5
<span class="comment"># 输出示例:</span>
<span class="comment"># ali,ct2000 → OES 1代,DTB选 meson-g12b-ali-ct2000.dtb</span>
<span class="comment"># amlogic,s922x → S922X芯片</span>
<span class="comment"># 查看CPU信息</span>
cat /proc/cpuinfo | grep "model name" | head -1
<span class="comment"># 查看内存</span>
free -h
<span class="comment"># 查看存储</span>
lsblk
</div>
<h2>二、更换国内软件源(必做)</h2>
<p>Armbian默认源在国外,国内访问很慢。换成国内源后速度提升10倍以上。</p>
<h3>2.1 一键换源脚本</h3>
<div class="code-block">
cat > /root/change_source.sh &lt;&lt; 'EOF'
#!/bin/bash
echo "=== 开始更换Armbian国内源 ==="
<span class="comment"># 备份原源</span>
cp /etc/apt/sources.list /etc/apt/sources.list.bak
cp /etc/apt/sources.list.d/armbian.list /etc/apt/sources.list.d/armbian.list.bak
<span class="comment"># Debian源替换为阿里云(Debian 12 bookworm</span>
cat &gt; /etc/apt/sources.list &lt;&lt; 'DEB'
deb https://mirrors.aliyun.com/debian/ bookworm main contrib non-free non-free-firmware
deb https://mirrors.aliyun.com/debian/ bookworm-updates main contrib non-free non-free-firmware
deb https://mirrors.aliyun.com/debian/ bookworm-backports main contrib non-free non-free-firmware
deb https://mirrors.aliyun.com/debian-security/ bookworm-security main contrib non-free non-free-firmware
DEB
<span class="comment"># Armbian源替换为中科大</span>
cat &gt; /etc/apt/sources.list.d/armbian.list &lt;&lt; 'ARM'
deb https://mirrors.ustc.edu.cn/armbian/ bookworm main contrib non-free
ARM
echo "=== 源替换完成,开始更新 ==="
apt update
apt upgrade -y
echo "=== 系统更新完成 ==="
EOF
chmod +x /root/change_source.sh
/root/change_source.sh
</div>
<div class="alert alert-info">
<strong>💡 其他可选源</strong>
<ul style="margin:8px 0;">
<li>Debian源:阿里云、清华TUNA、中科大USTC、163</li>
<li>Armbian源:中科大USTC(镜像最全)、清华TUNA</li>
<li>也可以用 <code>armbian-config</code> → Personal → Mirrors 图形化选择</li>
</ul>
</div>
<h3>2.2 安装基础工具</h3>
<div class="code-block">
apt install -y \
curl wget htop vim nano \
git net-tools dnsutils \
unzip zip p7zip-full \
apt-transport-https ca-certificates \
gnupg lsb-release \
python3 python3-pip
</div>
<h2>三、Docker安装</h2>
<h3>3.1 官方脚本安装(推荐)</h3>
<div class="code-block">
<span class="comment"># 下载安装脚本(用阿里云镜像加速)</span>
curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh --mirror Aliyun
<span class="comment"># 启动Docker并设置开机自启</span>
systemctl enable docker
systemctl start docker
<span class="comment"># 验证安装</span>
docker --version
docker run --rm hello-world
</div>
<h3>3.2 安装Docker Compose</h3>
<div class="code-block">
<span class="comment"># 安装docker-compose插件</span>
apt install -y docker-compose-plugin
<span class="comment"># 验证</span>
docker compose version
</div>
<h3>3.3 配置Docker国内镜像加速(必做)</h3>
<div class="code-block">
mkdir -p /etc/docker
cat &gt; /etc/docker/daemon.json &lt;&lt; 'EOF'
{
"registry-mirrors": [
"https://docker.mirrors.ustc.edu.cn",
"https://dockerproxy.com",
"https://docker.1panel.live",
"https://mirror.iscas.ac.cn"
],
"log-driver": "json-file",
"log-opts": {
"max-size": "10m",
"max-file": "3"
},
"storage-driver": "overlay2"
}
EOF
systemctl daemon-reload
systemctl restart docker
<span class="comment"># 验证镜像加速是否生效</span>
docker info | grep -A 5 "Registry Mirrors"
</div>
<div class="alert alert-warning">
<strong>⚠️ 注意</strong>
国内Docker镜像源可能不定期失效。如果拉取镜像超时,尝试更换daemon.json中的镜像地址,或配置代理。
</div>
<h2>四、常用Docker容器一键部署</h2>
<h3>4.1 PortainerDocker可视化管理)</h3>
<div class="code-block">
docker run -d \
--name portainer \
--restart=always \
-p 9000:9000 \
-v /var/run/docker.sock:/var/run/docker.sock \
-v portainer_data:/data \
portainer/portainer-ce:latest
</div>
<p>访问 <code>http://设备IP:9000</code>,首次访问设置管理员密码。</p>
<h3>4.2 青龙面板(自动化脚本)</h3>
<div class="code-block">
docker run -dit \
--name qinglong \
--restart=always \
-p 5700:5700 \
-v /opt/qinglong/data:/ql/data \
whyour/qinglong:latest
</div>
<p>访问 <code>http://设备IP:5700</code>,默认账号admin,密码admin。青龙面板支持京东签到、各种自动化脚本。</p>
<h3>4.3 qBittorrentBT下载)</h3>
<div class="code-block">
docker run -d \
--name qbittorrent \
--restart=always \
-e PUID=0 -e PGID=0 \
-e TZ=Asia/Shanghai \
-e WEBUI_PORT=8085 \
-p 8085:8085 \
-p 6881:6881 -p 6881:6881/udp \
-v /opt/qbittorrent/config:/config \
-v /mnt/downloads:/downloads \
lscr.io/linuxserver/qbittorrent:latest
</div>
<h3>4.4 Alist(网盘聚合)</h3>
<div class="code-block">
docker run -d \
--name alist \
--restart=always \
-v /etc/alist:/opt/alist/data \
-p 5244:5244 \
-e PUID=0 -e PGID=0 \
-e UMASK=022 \
xhofe/alist:latest
</div>
<p>支持挂载百度网盘、阿里云盘、115、OneDrive、Google Drive等数十种网盘。</p>
<h3>4.5 AdGuard Home(广告过滤)</h3>
<div class="code-block">
docker run -d \
--name adguardhome \
--restart=always \
-v /opt/adguardhome/work:/opt/adguardhome/work \
-v /opt/adguardhome/conf:/opt/adguardhome/conf \
-p 3000:3000 -p 80:80 \
-p 53:53/tcp -p 53:53/udp \
adguard/adguardhome
</div>
<p>把路由器DNS设为设备IP,全家设备去广告。</p>
<h3>4.6 Uptime Kuma(服务监控)</h3>
<div class="code-block">
docker run -d \
--name uptime-kuma \
--restart=always \
-p 3001:3001 \
-v /opt/uptime-kuma:/app/data \
louislam/uptime-kuma:1
</div>
<p>监控网站/服务在线状态,宕机自动通知(支持Telegram、企业微信、邮件等)。</p>
<h2>五、docker-compose 部署示例</h2>
<p>多个容器建议用docker-compose统一管理:</p>
<div class="code-block">
mkdir -p /opt/stacks/media-server
cat &gt; /opt/stacks/media-server/docker-compose.yml &lt;&lt; 'EOF'
version: "3.8"
services:
portainer:
image: portainer/portainer-ce:latest
container_name: portainer
restart: always
ports:
- "9000:9000"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- portainer_data:/data
qbittorrent:
image: lscr.io/linuxserver/qbittorrent:latest
container_name: qbittorrent
restart: always
environment:
- PUID=0
- PGID=0
- TZ=Asia/Shanghai
- WEBUI_PORT=8085
ports:
- "8085:8085"
- "6881:6881"
- "6881:6881/udp"
volumes:
- /opt/qbittorrent/config:/config
- /mnt/downloads:/downloads
alist:
image: xhofe/alist:latest
container_name: alist
restart: always
ports:
- "5244:5244"
volumes:
- /etc/alist:/opt/alist/data
volumes:
portainer_data:
EOF
<span class="comment"># 启动所有容器</span>
cd /opt/stacks/media-server
docker compose up -d
<span class="comment"># 查看状态</span>
docker compose ps
<span class="comment"># 查看日志</span>
docker compose logs -f
</div>
<h2>六、系统优化</h2>
<h3>6.1 时区设置</h3>
<div class="code-block">
timedatectl set-timezone Asia/Shanghai
date
</div>
<h3>6.2 中文语言支持</h3>
<div class="code-block">
apt install -y locales
sed -i 's/# zh_CN.UTF-8 UTF-8/zh_CN.UTF-8 UTF-8/' /etc/locale.gen
locale-gen
update-locale LANG=zh_CN.UTF-8
</div>
<h3>6.3 SWAP虚拟内存</h3>
<p>2GB内存设备建议加2GB SWAP</p>
<div class="code-block">
fallocate -l 2G /swapfile
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile
echo '/swapfile none swap sw 0 0' &gt;&gt; /etc/fstab
free -h
</div>
<h3>6.4 风扇控制(OES设备)</h3>
<div class="code-block">
<span class="comment"># 查看温度</span>
cat /sys/class/thermal/thermal_zone0/temp
<span class="comment"># 查看风扇状态</span>
cat /sys/class/hwmon/hwmon0/pwm1
<span class="comment"># 风扇全速(临时测试)</span>
echo 255 &gt; /sys/class/hwmon/hwmon0/pwm1
<span class="comment"># 风扇停止(临时测试)</span>
echo 0 &gt; /sys/class/hwmon/hwmon0/pwm1
</div>
<h3>6.5 定时清理Docker</h3>
<div class="code-block">
<span class="comment"># 创建清理脚本</span>
cat &gt; /usr/local/bin/docker-clean &lt;&lt; 'EOF'
#!/bin/bash
docker system prune -af --volumes
docker image prune -af
EOF
chmod +x /usr/local/bin/docker-clean
<span class="comment"># 每周日凌晨3点自动清理</span>
(crontab -l 2&gt;/dev/null; echo "0 3 * * 0 /usr/local/bin/docker-clean") | crontab -
</div>
<h2>七、常见问题</h2>
<h3>Q1: apt update 报错或很慢?</h3>
<p>A: 源没换成功。检查 <code>/etc/apt/sources.list</code><code>/etc/apt/sources.list.d/armbian.list</code> 是否正确替换为国内源。注意Debian版本(bookworm/bullseye)要对应。</p>
<h3>Q2: Docker拉取镜像超时?</h3>
<p>A: 配置国内镜像加速(见3.3节)。如果所有镜像源都失效,可以配置HTTP代理:</p>
<div class="code-block">
mkdir -p /etc/systemd/system/docker.service.d
cat &gt; /etc/systemd/system/docker.service.d/proxy.conf &lt;&lt; 'EOF'
[Service]
Environment="HTTP_PROXY=http://代理IP:端口"
Environment="HTTPS_PROXY=http://代理IP:端口"
Environment="NO_PROXY=localhost,127.0.0.1"
EOF
systemctl daemon-reload
systemctl restart docker
</div>
<h3>Q3: 容器启动后访问不了?</h3>
<p>A: 检查:
<ul>
<li>端口映射是否正确(-p 参数)</li>
<li>防火墙是否放行:<code>ufw status</code><code>iptables -L</code></li>
<li>容器是否正常运行:<code>docker ps -a</code></li>
<li>查看容器日志:<code>docker logs 容器名</code></li>
</ul>
</p>
<h3>Q4: 磁盘空间不足?</h3>
<p>A: Docker镜像和容器占用大量空间。执行 <code>docker system df</code> 查看占用,<code>docker system prune -a</code> 清理未使用的镜像。建议把Docker数据目录移到大硬盘:</p>
<div class="code-block">
<span class="comment"># 停止Docker</span>
systemctl stop docker
<span class="comment"># 迁移数据到/mnt/docker</span>
mv /var/lib/docker /mnt/docker
ln -s /mnt/docker /var/lib/docker
<span class="comment"># 重启</span>
systemctl start docker
</div>
<h3>Q5: Armbian怎么升级内核?</h3>
<p>A: 用armbian自带工具:</p>
<div class="code-block">
<span class="comment"># 查看当前内核</span>
uname -r
<span class="comment"># 升级内核(需要联网)</span>
armbian-update
<span class="comment"># 或用ophub的内核更新脚本</span>
curl -fsSL https://github.com/ophub/amlogic-s9xxx-armbian/raw/main/build-armbian/scripts/update.sh | bash
</div>
<h2>八、相关教程</h2>
<ul>
<li><a href="oes-flash.html">📱 OES刷机完整教程</a></li>
<li><a href="fnos-nas.html">📦 飞牛OS NAS搭建指南</a></li>
<li><a href="systems.html">💿 系统选择对比</a></li>
<li><a href="tv-box-flash.html">📺 常见机顶盒刷机合集</a></li>
<li>🔧 Armbian网络配置与WireGuard组网(待补充)</li>
</ul>
</div>
</div>
<footer class="footer">
<div class="footer-inner">
<div>
<h4>⚡ ARM刷机指南</h4>
<p style="font-size:14px;line-height:1.8;">专注ARM开发板、机顶盒刷机教程,每篇教程经过实测验证。</p>
</div>
<div>
<h4>热门教程</h4>
<ul>
<li><a href="oes-flash.html">OES刷机教程</a></li>
<li><a href="armbian-docker.html">Armbian优化</a></li>
<li><a href="unbrick.html">救砖指南</a></li>
</ul>
</div>
<div>
<h4>关于</h4>
<ul>
<li><a href="about.html">关于我们</a></li>
<li><a href="#">免责声明</a></li>
</ul>
</div>
</div>
<div class="footer-bottom">
<p>© 2026 ARM刷机指南 | 教程仅供学习交流,刷机有风险,操作需谨慎</p>
</div>
</footer>
</body>
</html>