
dunadigital/strapi本镜像为Strapi v4提供容器化部署方案,延续原官方Docker项目结构。因官方Strapi Docker项目已停止维护,本镜像在其基础上进行优化,支持AMD64和ARM64v8架构,可自动适配系统架构,简化Strapi应用的部署流程。
package.json,自动在/srv/app目录安装TypeScript基础项目(需挂载该目录)package.json但无node_modules时,自动使用npm或yarn安装依赖(优先yarn,若存在yarn.lock)yarn create strapi-app替代strapi new创建新项目package.json,自动在/srv/app安装TypeScript项目(需挂载目录)yarn.lock存在与否选择)适用于需要快速部署Strapi v4的开发者、小型团队或个人项目,尤其适合跨架构部署场景(如AMD64服务器与ARM64v8设备),简化Strapi应用的搭建、维护和迁移流程。
主要环境变量说明:
NODE_ENV:运行环境(如production、development)DATABASE_CLIENT:数据库客户端(如mysql、postgres)DATABASE_HOST:数据库主机地址DATABASE_PORT:数据库端口DATABASE_NAME:数据库名称DATABASE_USERNAME:数据库用户名DATABASE_PASSWORD:数据库密码JWT_SECRET:JWT密钥ADMIN_JWT_SECRET:管理员JWT密钥APP_KEYS:应用密钥(多个密钥用逗号分隔)以下配置包含Strapi服务和MariaDB数据库,支持数据持久化:
yamlservices: strapi: container_name: strapi image: dunadigital/strapi:4.25.6 environment: NODE_ENV: production DATABASE_CLIENT: mysql DATABASE_HOST: mariadb DATABASE_PORT: 3306 DATABASE_NAME: strapi DATABASE_USERNAME: strapi DATABASE_PASSWORD: strapi JWT_SECRET: YOUR_SECRET # 替换为实际密钥 ADMIN_JWT_SECRET: YOUR_SECRET # 替换为实际密钥 APP_KEYS: YOUR_SECRET,YOUR_SECRET,YOUR_SECRET,YOUR_SECRET # 替换为实际密钥 ports: - "1337:1337" # Strapi默认端口 volumes: - ./app:/srv/app # 挂载应用目录,持久化项目文件 mariadb: container_name: mariadb image: mariadb:10.6 environment: MARIADB_ROOT_PASSWORD: root # 数据库 root 密码 MYSQL_DATABASE: strapi # 数据库名称 MYSQL_USER: strapi # 数据库用户名 MYSQL_PASSWORD: strapi # 数据库密码 ports: - "3306:3306" # MariaDB默认端口 volumes: - ./data:/var/lib/mysql # 挂载数据库目录,持久化数据
docker-compose.yml文件YOUR_SECRET为实际安全密钥docker-compose up -d启动服务./app目录初始化项目http://localhost:1337进入Strapi管理界面

manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务