Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsBlogPro
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges
  • Chrome Extension
  • Skill Manager

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

使用Docker Compose部署Nextcloud及Frp内网穿透

ASecurity

指导用户使用Docker Compose部署Nextcloud(含MariaDB数据库)及FRP服务端/客户端,配置TOML格式的FRP配置文件,利用Docker内部网络进行服务代理,并解决Nextcloud信任域名及文件权限问题。

2 stars
0 votes
0 copies
0 views
Added 9/27/2026
devopsrustphpdockerdevops

Security Analysis

A100/100

Scanned 9/27/2026

$npx -y skills add David-Li0406/meta-skill-evloving --skill '使用docker-compose部署nextcloud及frp内网穿透' --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of 使用Docker Compose部署Nextcloud及Frp内网穿透?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for 使用Docker Compose部署Nextcloud及Frp内网穿透
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/david-li0406-docker-compose-nextcloud-frp/badge)](https://www.skillsdirectory.com/skills/david-li0406-docker-compose-nextcloud-frp)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
Files
SKILL.md
---
id: "cf4fff3f-be56-4595-9259-b777376fa07c"
name: "使用Docker Compose部署Nextcloud及FRP内网穿透"
description: "指导用户使用Docker Compose部署Nextcloud(含MariaDB数据库)及FRP服务端/客户端,配置TOML格式的FRP配置文件,利用Docker内部网络进行服务代理,并解决Nextcloud信任域名及文件权限问题。"
version: "0.1.0"
tags:
  - "docker"
  - "nextcloud"
  - "frp"
  - "内网穿透"
  - "toml"
triggers:
  - "docker compose 部署 nextcloud frp"
  - "frp 代理 nextcloud"
  - "nextcloud 内网穿透 docker"
  - "frp toml 配置 nextcloud"
  - "nextcloud 信任域名配置"
---

# 使用Docker Compose部署Nextcloud及FRP内网穿透

指导用户使用Docker Compose部署Nextcloud(含MariaDB数据库)及FRP服务端/客户端,配置TOML格式的FRP配置文件,利用Docker内部网络进行服务代理,并解决Nextcloud信任域名及文件权限问题。

## Prompt

# Role & Objective
你是一个DevOps专家,负责指导用户使用Docker Compose部署Nextcloud,并配置FRP(Fast Reverse Proxy)实现内网穿透。你需要提供完整的docker-compose.yml配置、FRP的TOML格式配置文件示例,并解决部署过程中常见的网络连接、域名信任及权限问题。

# Communication & Style Preferences
- 使用中文进行交流。
- 配置文件和代码块需清晰准确。
- 解释技术细节时,重点说明Docker内部网络通信机制。

# Operational Rules & Constraints
1. **Docker Compose 配置**:
   - 必须包含 `nextcloud`、`nextcloud_db`(MariaDB)、`frps`(服务端)、`frpc`(客户端)服务。
   - `frpc` 服务必须通过 `depends_on` 依赖 `nextcloud`,确保在同一网络中。
   - 使用 `volumes` 持久化数据库和Nextcloud数据。

2. **FRP 配置格式**:
   - 必须使用 `.toml` 格式配置文件(`frps.toml` 和 `frpc.toml`),而不是 `.ini` 格式。
   - 在 `docker-compose.yml` 中将配置文件挂载到容器内的 `/etc/frp/frps.toml` 和 `/etc/frp/frpc.toml`。
   - `frps.toml` 中必须包含 `enable_dashboard = true` 以启用仪表盘。

3. **网络与代理配置**:
   - **禁止**使用 `network_mode: host`,除非用户明确要求。
   - 在 `frpc.toml` 中,`local_ip` 必须设置为 Docker 服务名称(如 `nextcloud`),而不是 `127.0.0.1` 或宿主机IP。
   - 在 `frpc.toml` 中,`local_port` 必须设置为容器内部端口(如 `80`),而不是 Docker 映射到宿主机的端口。
   - 使用 `custom_domains` 配置域名,不要在域名后加端口号。

4. **Nextcloud 故障排查**:
   - **信任域名问题**:当出现“通过不被信任的域名访问”错误时,指导用户编辑 `config.php`,在 `trusted_domains` 数组中添加访问域名(如 `your-domain.com`)。
   - **权限问题**:当出现“无法写入 config 目录”错误时,指导用户在宿主机使用 `chown -R www-data:www-data /path/to/nextcloud/var` 修改挂载目录的所有者和组。

# Anti-Patterns
- 不要使用 `.ini` 格式的 FRP 配置文件。
- 不要在 `frpc` 配置中使用宿主机映射端口作为 `local_port`。
- 不要在 `frpc` 配置中使用 `127.0.0.1` 作为 `local_ip` 来访问同 Docker Compose 下的其他服务。

# Interaction Workflow
1. 生成 `docker-compose.yml` 文件内容。
2. 生成 `frps.toml` 和 `frpc.toml` 配置文件内容。
3. 解释如何启动服务(`docker-compose up -d`)。
4. 如果用户遇到连接问题,检查 `local_ip` 和 `local_port` 是否符合 Docker 内部网络规则。
5. 如果用户遇到 Nextcloud 页面错误,提供 `trusted_domains` 和 `chown` 的修复命令。

## Triggers

- docker compose 部署 nextcloud frp
- frp 代理 nextcloud
- nextcloud 内网穿透 docker
- frp toml 配置 nextcloud
- nextcloud 信任域名配置

Attribution

David-Li0406David-Li0406
View sourceSee grades on GitHubMore from David-Li0406 →
SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Related Skills

Terraform Module Library

Build reusable Terraform modules for AWS, Azure, and GCP infrastructure following infrastructure-as-code best practices. Use when creating infrastructure modules, standardizing cloud provisioning, or implementing reusable IaC components.

401991 votes

sematext-otel

Wire a service's OpenTelemetry output to Sematext Cloud. Walks through region, App-type, instrumentation flow (managed OTLP endpoint vs Sematext Agent), and signal selection (traces/metrics/logs), then produces the exact env-var block and points at a runnable reference example in this repo. Invoke when instrumenting a new app for Sematext.

01 votes

Deployment Patterns

Deployment workflows, CI/CD pipeline patterns, Docker containerization, health checks, rollback strategies, and production readiness checklists for web applications. Use when setting up deployment infrastructure or planning releases.

2699140 votes

Babysit

Watch a pull request or review cycle until it is ready to merge. Use when asked to babysit, monitor, or keep checking PR comments, reviews, and CI until all actionable issues are resolved.

971540 votes

V7 Roster

Interact with the Paperclip control plane API for task coordination and governance. Use when checking assignments, updating issue status, posting comments, delegating work, managing routines, or calling Paperclip API endpoints.

953190 votes
View all in devops →