---
title: 闲置安卓手机跑 Docker？无需 Root，旧手机直接变服务器｜termux-containers
date: 2026-11-04T06:38:14Z
modified: 2026-11-04T06:39:27Z
permalink: "https://www.appinn.com/termux-containers-2/"
type: post
status: publish
excerpt: ""
categories:
  - Android
tags:
  - Android
  - Docker
  - 容器
  - 旧手机
  - 服务器
featured_image: "https://www.appinn.com/wp-content/uploads/2026/11/E997B2E7BDAEE5AE89E58D93E6898BE69CBAE8B791-Docker-E69C8DE58AA1E599A8.jpg"
author: 青小蛙
timestamp: 2026-11-04T06:39:27Z
---

闲置 Android 手机，除了塞抽屉里，还可以运行 Docker！

这是 @**BHznJNs** 同学在论坛带来的新玩具：**termux-containers**，原文：[https://meta.appinn.net/t/topic/94920](https://meta.appinn.net/t/topic/94920)

![](https://www.appinn.com/wp-content/uploads/2026/11/E997B2E7BDAEE5AE89E58D93E6898BE69CBAE8B791-Docker-E69C8DE58AA1E599A8.jpg)

## termux-containers

这个叫 **termux-containers** 的开源项目，它让你能够像在 Linux 服务器上部署 Docker 服务一样，在 Android 手机上部署一些 Linux 应用，而且无需 Root 权限。

比如，在手机上运行一个 Nginx 镜像，托管网站！虽然没什么用，但很酷啊。

### 特性

- 不需要 Root 手机
- 不需要安装 Docker Engine
- 不需要常驻 Docker 守护进程
- 使用 YAML 文件管理多个服务
- 支持启动、停止、查看运行状态
- 支持挂载文件和目录，保存应用数据

## 工作原理

**Android → Termux → PRoot-Distro → OCI 镜像 → Linux 应用**

**Termux** 是一款 Android 上的[终端模拟器](https://www.appinn.com/terminal-tty-and-shell.md)和 Linux 环境，可以直接在手机上使用命令行工具。

**PRoot-Distro** 是 Termux 生态中的 Linux 环境管理工具，可以让 Android 手机在无需 Root 的情况下运行 Ubuntu、Debian 等 Linux 发行版，以及兼容的 OCI 容器镜像。

**OCI 镜像** 则是开放标准的容器镜像，如今 Docker Hub 上的大量 Docker 镜像都采用 OCI 兼容格式。

当然，它与真正的 Docker 仍然有区别：PRoot 不提供 Docker 那样的内核级容器隔离，也无法运行所有 Docker 镜像。

但对于一些轻量级服务来说，这已经很有吸引力了。

## 能干什么？

青小蛙觉得，最有意思的玩法就是：**把闲置 Android 手机变成一台低功耗的小服务器。**

除了上面提到的没什么用的网站，下面这个倒是不错：

### 运行 Cloudflare Tunnel

这是项目官方提供的另一个示例。

Cloudflare Tunnel 可以让手机主动连接 Cloudflare，从而让外部用户通过域名访问手机上的服务。相当于实现了内网穿透。

### 自托管项目

现在 AI 这么方便了，随便写点什么代码都非常容易，

- 运行家庭消息转发机器人
- Node.js 轻量级应用
- 简单的 Webhook 接收服务
- Aria2 / yt-dlp 等下载工具

甚至，可以在没有 NAS、小主机的情况下，使用安卓手机替代一部分 NAS 功能。

## 怎么干？

首先需要在 Android 手机上安装 [Termux](https://github.com/termux/termux-app)。

然后打开 Termux，执行：


pkg update
pkg install git
git clone https://github.com/BHznJNs/termux-containers ~/termux-containers
cd ~/termux-containers
bash install.sh


安装脚本会配置 Python、PRoot、PRoot-Distro 等依赖，并创建 `termux-containers` 命令。

### 第一步：创建一个容器配置（Nginx 为例）

安装完成后，编辑项目目录里的 `containers.yaml`：


nano ~/termux-containers/containers.yaml


填入下面的配置：


services:
  web:
    image: nginxinc/nginx-unprivileged:stable-alpine
    enabled: true
    volumes:
      - type: directory
        source: ./data/web
        target: /usr/share/nginx/html
    environment:
      PORT: "8080"


### 第二步：放入一个网页

执行：


mkdir -p ~/termux-containers/data/web

echo '<h1>Hello from Android!</h1>' > ~/termux-containers/data/web/index.html


这样就创建了一个简单的网页。

### 第三步：启动容器

执行：


termux-containers apply


工具会读取 YAML 配置，安装缺失的镜像，并尝试启动服务。

之后可以执行：


termux-containers status


查看服务状态。

还可以使用：


termux-containers stop web
termux-containers start web


停止或者重新启动服务。

如果 Nginx 成功启动并监听 8080 端口，就可以在手机浏览器里访问：

`http://127.0.0.1:8080`

这个非常有意思，你能想象到一台随便拿着走的手机，托管着一个网页，连上网，就能访问。

这让青小蛙想起这个项目：[有人用 Wi-Fi 灯泡改造了一个《禁书图书馆》](https://www.appinn.com/banned-book-library.md)

## 使用限制

它无法使用所有的 Docker 镜像，有几个限制：

- **需要 ARM64** **架构**
- **没有 Docker 式的端口映射。** PRoot 与 Termux 共享网络。
- **没有完整的容器安全隔离。** 应当只运行可信镜像。
- **后台运行受 Android 限制。** 手机休眠或系统清理后台时，服务可能中断。

## 青小蛙觉得

termux-containers 让闲置手机在服务器托管方面更加容易了。

那么有没有一种可能，将多台闲置手机都连接起来，组成一个手机服务器集群，甚至搞出一个手机版本的 k8s（Kubernetes，容器编排系统），统一管理这些手机上的容器服务。

然后，变身家用迷你数据中心。

想法还是挺酷的，也不知道有没有可能实现。

## 获取

- [GitHub](https://github.com/BHznJNs/termux-containers)

---

原文：https://www.appinn.com/termux-containers/

## Topics

**分类目录:** [Android](https://www.appinn.com/category/android/?output_format=md)

**标签:** [Docker](https://www.appinn.com/tag/docker/?output_format=md), [容器](https://www.appinn.com/tag/%e5%ae%b9%e5%99%a8/?output_format=md), [旧手机](https://www.appinn.com/tag/%e6%97%a7%e6%89%8b%e6%9c%ba/?output_format=md), [服务器](https://www.appinn.com/tag/%e6%9c%8d%e5%8a%a1%e5%99%a8/?output_format=md)