Files
pydio_cells/podman-ai.md

3.2 KiB
Raw Permalink Blame History

部署要求

  1. 使用 podman(不是 docker
  2. 使用 podman-compose 方式部署,配置文件为 podman-compose.yml.env
  3. 创建名为 cells-pod 的 pod宿主机暴露端口 8080
  4. MariaDB 和 Cells 容器加入同一个 pod共享网络命名空间不使用 --network
  5. MariaDB 配置
    • 镜像:docker.io/library/mariadb
    • 环境变量从 .env 读取:MYSQL_ROOT_PASSWORDMYSQL_DATABASECELLS_DB_USERCELLS_DB_PASSWORD
    • 数据持久化:./mariadb_data
    • 配置健康检查
  6. Cells 配置
    • 镜像:docker.io/pydio/cells
    • 环境变量从 .env 读取:CELLS_SITE_BIND=0.0.0.0:8080CELLS_SITE_EXTERNALCELLS_SITE_LABEL
    • 数据持久化:./cells_working
    • 依赖 MariaDB 健康后再启动
  7. 部署完成后检查容器状态

📁 前置准备(确保您的文件就绪)

请确认当前目录下已包含以下两个文件:

  • podman-compose.yml(您之前提供的版本,含数据目录注释)
  • .env.example(环境变量模板)

如果还没有 .env 文件,请执行:

cp .env.example .env

然后编辑 .env 文件,填入真实密码和域名(不要留空):

MYSQL_ROOT_PASSWORD=您的强密码
MYSQL_DATABASE=pydiocells
CELLS_DB_USER=pydio
CELLS_DB_PASSWORD=您的数据库密码
CELLS_EXTERNAL=https://localhost:8080   # 或您的实际域名
CELLS_SITE_LABEL=MyCells
HOST_PORT=8080

⚠️ .env 中的密码请勿包含 $ & * ! 等特殊字符,避免解析错误。


🚀 一键部署命令

# 创建数据目录(避免权限问题)
mkdir -p mariadb_data cells_working

# 启动所有服务(自动创建 pod
podman-compose up -d

🔍 部署后检查

# 查看 pod 状态
podman pod ps

# 查看容器状态
podman ps

# 查看日志(确认无报错)
podman logs pydio-mariadb
podman logs pydio-cells

# 测试访问(根据您的 CELLS_EXTERNAL 配置)
curl -k https://localhost:8080

如果一切正常,您会看到 Pydio Cells 的安装向导页面。


🧹 停止与清理

# 停止容器(保留 pod 和数据)
podman-compose down

# 彻底删除 pod会同时删除容器
podman pod rm -f cells-pod

# 如需清理数据目录(谨慎)
rm -rf mariadb_data cells_working

⚠️ 常见问题快速解决

问题 解决方法
podman-compose: command not found 安装:sudo dnf install podman-composepip install podman-compose
端口 8080 已被占用 修改 .env 中的 HOST_PORT,例如 HOST_PORT=8081,并确保 CELLS_EXTERNAL 也对应修改
Cells 无法连接 MariaDB 检查 pod 内网络:podman exec -it pydio-cells ping mariadb(应能通)
MariaDB 健康检查一直失败 查看日志:podman logs pydio-mariadb,等待 30 秒后重试