添加 README.md 文件
All checks were successful
Build and Push TFTP Docker Image / docker-build-push (push) Successful in 16s
All checks were successful
Build and Push TFTP Docker Image / docker-build-push (push) Successful in 16s
This commit is contained in:
106
README.md
Normal file
106
README.md
Normal file
@@ -0,0 +1,106 @@
|
||||
# TFTP 守护进程
|
||||
|
||||
基于 Alpine Linux 的轻量级容器化 TFTP 服务器,专为网络启动和文件服务场景设计。
|
||||
|
||||
## 快速开始
|
||||
|
||||
### 基础使用
|
||||
|
||||
使用本地目录挂载运行 TFTP 服务器:
|
||||
|
||||
```bash
|
||||
docker run -d \
|
||||
-p 69:69/udp \
|
||||
-v /path/to/tftpboot:/var/lib/tftpboot \
|
||||
gitea.bcde.io/wangdefa/tftpd:latest
|
||||
```
|
||||
|
||||
### 启用 NetBoot.xyz
|
||||
|
||||
启用 netboot.xyz EFI 启动文件的自动下载:
|
||||
|
||||
```bash
|
||||
docker run -d \
|
||||
-p 69:69/udp \
|
||||
-e DOWNLOAD_NETBOOT_XYZ=true \
|
||||
-v /path/to/tftpboot:/var/lib/tftpboot \
|
||||
gitea.bcde.io/wangdefa/tftpd:latest
|
||||
```
|
||||
|
||||
## 配置
|
||||
|
||||
### 环境变量
|
||||
|
||||
| 变量 | 说明 | 默认值 |
|
||||
|----------|-------------|---------|
|
||||
| `DOWNLOAD_NETBOOT_XYZ` | 启动时下载 netboot.xyz EFI 文件 | `false` |
|
||||
|
||||
### 卷挂载
|
||||
|
||||
| 容器路径 | 说明 |
|
||||
|----------------|-------------|
|
||||
| `/var/lib/tftpboot` | TFTP 服务的根目录 |
|
||||
|
||||
### 端口暴露
|
||||
|
||||
| 端口 | 协议 | 说明 |
|
||||
|------|----------|-------------|
|
||||
| 69 | UDP | TFTP 服务端口 |
|
||||
|
||||
## 使用场景
|
||||
|
||||
### NetBoot.xyz 启动菜单
|
||||
|
||||
使用 netboot.xyz 提供网络启动菜单:
|
||||
|
||||
```bash
|
||||
docker run -d \
|
||||
--name tftpd-netboot \
|
||||
-p 69:69/udp \
|
||||
-e DOWNLOAD_NETBOOT_XYZ=true \
|
||||
-v /srv/tftp:/var/lib/tftpboot \
|
||||
gitea.bcde.io/wangdefa/tftpd:latest
|
||||
```
|
||||
|
||||
这将自动下载:
|
||||
- `netboot.xyz.efi` - 用于 x86_64 UEFI 系统
|
||||
- `netboot.xyz-arm64.efi` - 用于 ARM64 UEFI 系统
|
||||
|
||||
### Docker Compose
|
||||
|
||||
创建 `docker-compose.yml` 文件:
|
||||
|
||||
```yaml
|
||||
version: '3.8'
|
||||
|
||||
services:
|
||||
tftpd:
|
||||
image: gitea.bcde.io/wangdefa/tftpd:latest
|
||||
container_name: tftpd
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "69:69/udp"
|
||||
volumes:
|
||||
- ./tftpboot:/var/lib/tftpboot
|
||||
environment:
|
||||
- DOWNLOAD_NETBOOT_XYZ=true
|
||||
```
|
||||
|
||||
然后运行:
|
||||
|
||||
```bash
|
||||
docker-compose up -d
|
||||
```
|
||||
|
||||
## 架构
|
||||
|
||||
### 容器结构
|
||||
|
||||
```
|
||||
tftpd/
|
||||
├── Dockerfile # 容器定义
|
||||
├── entrypoint.sh # 初始化脚本
|
||||
└── .gitea/
|
||||
└── workflows/
|
||||
└── ci.yaml # CI/CD 流水线
|
||||
```
|
||||
Reference in New Issue
Block a user