add README

This commit is contained in:
Timi
2026-01-22 16:17:14 +08:00
parent 3ba5be2abe
commit e33ab8cd90
4 changed files with 339 additions and 0 deletions

117
frp/README.md Normal file
View File

@ -0,0 +1,117 @@
# FRP (Fast Reverse Proxy)
FRP 内网穿透工具镜像,支持服务端 (frps) 和客户端 (frpc)。
## 基础镜像
- `debian:latest`
## 包含组件
| 组件 | 版本 |
|------|------|
| frps | 0.66.0 |
| frpc | 0.66.0 |
## 构建
```bash
# 默认构建
./rebuild.sh frp
# 指定版本
docker build --build-arg FRP_VERSION=0.66.0 -t timi/frp:latest ./frp
# 通过代理下载
docker build --build-arg PROXY=http://proxy:8080 -t timi/frp:latest ./frp
```
## 构建参数
| 参数 | 默认值 | 说明 |
|------|--------|------|
| `FRP_VERSION` | 0.66.0 | FRP 版本号 |
| `PROXY` | (空) | 下载时使用的代理地址 |
## 暴露端口
| 端口 | 说明 |
|------|------|
| 7000 | frps 服务端口 |
| 7500 | frps Dashboard |
| 7400 | frps KCPTUN |
## 使用
### 作为服务端 (frps)
```bash
# 创建配置文件
cat > frps.toml << 'EOF'
bindPort = 7000
webServer.addr = "0.0.0.0"
webServer.port = 7500
EOF
# 运行服务端
docker run -d --name frps \
-p 7000:7000 \
-p 7500:7500 \
-v $(pwd)/frps.toml:/etc/frp/frps.toml \
timi/frp:latest
```
### 作为客户端 (frpc)
```bash
# 创建配置文件
cat > frpc.toml << 'EOF'
serverAddr = "your-server.com"
serverPort = 7000
[[proxies]]
name = "web"
type = "http"
localPort = 80
customDomains = ["example.com"]
EOF
# 运行客户端
docker run -d --name frpc \
-v $(pwd)/frpc.toml:/etc/frp/frpc.toml \
--entrypoint /usr/local/bin/frpc \
timi/frp:latest -c /etc/frp/frpc.toml
```
### Docker Compose 示例
#### 服务端
```yaml
services:
frps:
image: timi/frp:latest
ports:
- "7000:7000"
- "7500:7500"
volumes:
- ./frps.toml:/etc/frp/frps.toml
restart: unless-stopped
```
#### 客户端
```yaml
services:
frpc:
image: timi/frp:latest
entrypoint: /usr/local/bin/frpc
command: ["-c", "/etc/frp/frpc.toml"]
volumes:
- ./frpc.toml:/etc/frp/frpc.toml
restart: unless-stopped
```
## 配置文件参考
FRP 官方文档: https://gofrp.org/zh-cn/docs/

View File

@ -0,0 +1,47 @@
# Gitea Runner Base
Gitea Action Runner 基础镜像,基于 `gitea/act_runner` 添加常用构建工具。
## 基础镜像
- `gitea/act_runner:latest` (Alpine Linux)
## 包含工具
| 类别 | 工具 |
|------|------|
| 版本控制 | git, git-lfs |
| 网络工具 | curl, wget, ca-certificates, openssl |
| 压缩工具 | tar, gzip, bzip2, xz, zip, unzip |
| 构建工具 | make, bash, coreutils, findutils, grep, sed, gawk |
| 其他工具 | jq, tree |
## 构建
```bash
# 使用构建脚本
./rebuild.sh gitea_runner_base
# 或直接使用 docker build
docker build -t timi/gitea_runner_base:latest ./gitea_runner_base
```
## 使用
此镜像作为其他语言环境镜像的基础,通常不直接使用。
如需直接使用:
```bash
docker run --rm -it timi/gitea_runner_base:latest /bin/bash
```
## 扩展
创建新的语言环境镜像时,以此镜像为基础:
```dockerfile
FROM timi/gitea_runner_base:latest
# 添加语言环境...
```

View File

@ -0,0 +1,90 @@
# Gitea Runner Java
Gitea Action Runner Java 构建环境,基于 `gitea_runner_base` 添加多版本 JDK 和 Maven。
## 基础镜像
- `timi/gitea_runner_base:latest`
## 包含环境
| 组件 | 版本 |
|------|------|
| JDK | 8, 11, 17, 21 (OpenJDK) |
| Maven | 3.9.12 |
## JDK 路径
| 版本 | 路径 |
|------|------|
| JDK 8 | `/usr/lib/jvm/java-1.8-openjdk` |
| JDK 11 | `/usr/lib/jvm/java-11-openjdk` |
| JDK 17 | `/usr/lib/jvm/java-17-openjdk` |
| JDK 21 | `/usr/lib/jvm/java-21-openjdk` |
默认使用 JDK 17。
## 构建
```bash
# 先构建基础镜像
./rebuild.sh gitea_runner_base
# 再构建 Java 镜像
./rebuild.sh gitea_runner_java
```
## 切换 JDK 版本
### 方式一:使用切换脚本
```bash
source use-java 8 # 切换到 JDK 8
source use-java 11 # 切换到 JDK 11
source use-java 17 # 切换到 JDK 17
source use-java 21 # 切换到 JDK 21
```
### 方式二:设置环境变量
```yaml
# Gitea Action workflow 示例
env:
JAVA_HOME: /usr/lib/jvm/java-11-openjdk
```
### 方式三:直接调用
```bash
/usr/lib/jvm/java-1.8-openjdk/bin/java -version
```
## 环境变量
| 变量 | 默认值 |
|------|--------|
| `JAVA_HOME` | `/usr/lib/jvm/java-17-openjdk` |
| `MAVEN_HOME` | `/opt/maven` |
## Gitea Action 示例
```yaml
name: Java Build
on: [push]
jobs:
build:
runs-on: ubuntu-latest
container:
image: timi/gitea_runner_java:latest
steps:
- uses: actions/checkout@v4
- name: Build with Maven
run: mvn clean package
- name: Build with JDK 8
run: |
source use-java 8
mvn clean package
```

85
java_runtime/README.md Normal file
View File

@ -0,0 +1,85 @@
# Java Runtime
多版本 Java 运行时环境,用于运行各类 Java 服务。
## 基础镜像
- `debian:latest`
## 包含环境
| 组件 | 版本 |
|------|------|
| JRE | 8, 21 (Eclipse Temurin) |
| 时区 | Asia/Shanghai |
| 字符集 | UTF-8 |
## JRE 路径
| 版本 | 路径 |
|------|------|
| JRE 8 | `/usr/lib/jvm/temurin-8-jre-amd64` |
| JRE 21 | `/usr/lib/jvm/temurin-21-jre-amd64` |
默认使用 JRE 21。
## 预装依赖
- **网络工具**: curl, openssh-client
- **进程工具**: procps, net-tools, iproute2
- **字体支持**: 文泉驿微米黑、文泉驿正黑、文鼎楷体、文鼎宋体
- **图形库**: libjpeg, libpng, libfreetype, fontconfig
- **数据库客户端**: libmariadb3, libpq5
## 构建
```bash
./rebuild.sh java_runtime
```
## 使用
### 运行 JAR 应用
```bash
# 使用默认 JRE 21
docker run --rm -v /path/to/app:/app timi/java_runtime:latest java -jar /app/app.jar
# 使用 JRE 8
docker run --rm -e JAVA_HOME=/usr/lib/jvm/temurin-8-jre-amd64 \
-v /path/to/app:/app timi/java_runtime:latest \
/usr/lib/jvm/temurin-8-jre-amd64/bin/java -jar /app/app.jar
```
### 作为基础镜像
```dockerfile
FROM timi/java_runtime:latest
COPY target/app.jar /app/app.jar
ENTRYPOINT ["java", "-jar", "/app/app.jar"]
```
### Docker Compose 示例
```yaml
services:
myapp:
image: timi/java_runtime:latest
volumes:
- ./app.jar:/app/app.jar
command: java -jar /app/app.jar
environment:
- TZ=Asia/Shanghai
```
## 环境变量
| 变量 | 默认值 |
|------|--------|
| `JAVA_HOME` | `/usr/lib/jvm/temurin-21-jre-amd64` |
| `JAVA8_HOME` | `/usr/lib/jvm/temurin-8-jre-amd64` |
| `JAVA21_HOME` | `/usr/lib/jvm/temurin-21-jre-amd64` |
| `TZ` | `Asia/Shanghai` |
| `LANG` | `C.UTF-8` |