FROM node:18-alpine RUN apk add --no-cache python3 make g++ git postgresql-client WORKDIR /srv RUN CI=true STRAPI_CLOUD_SKIP=true npx --yes create-strapi-app@4.25.0 app \ --dbclient=sqlite \ --no-run \ --skip-cloud WORKDIR /srv/app # overrides で ajv@8 を強制 RUN node -e " \ const fs = require('fs'); \ const pkg = JSON.parse(fs.readFileSync('package.json', 'utf8')); \ pkg.overrides = { ...(pkg.overrides || {}), ajv: '^8.12.0' }; \ fs.writeFileSync('package.json', JSON.stringify(pkg, null, 2)); \ " RUN npm install --legacy-peer-deps RUN npm install --save pg@8.11.3 punycode COPY config/database.js ./config/database.js COPY config/server.js ./config/server.js COPY src/admin/webpack.config.js ./src/admin/webpack.config.js COPY docker-entrypoint.sh /docker-entrypoint.sh RUN chmod +x /docker-entrypoint.sh ENV HOST=0.0.0.0 ENV PORT=7860 ENV NODE_ENV=production EXPOSE 7860 ENTRYPOINT ["/docker-entrypoint.sh"]