This is a quickstart repository you can fork to deploy Strapi to Kubernetes on AWS/GCP/DO with Porter. This sample repository uses PostgresDB by default. Modify the files in /app/config/env/production to customize your database settings.
- Create an account on Porter.
- One-click provision a Kubernetes cluster in a cloud provider of your choice, or connect an existing cluster.
- Fork this repository.
- From the Launch tab, navigate to Web Service > Deploy from Git Repository. Then select the forked repository and
Dockerfilein the root directory. - Configure the port to
1337, add environment variableNODE_ENV=production, and set resources to the recommended settings (i.e. 2048Mi RAM, 1000 CPU). - Hit Deploy!
- Strapi instance deployed through Porter connects to PostgresDB. You can connect Strapi instance deployed on Porter to any external database, but it is also possible to use a database that is also deployed on Porter. Follow this guide to deploy a PostgresDB instance to your cluster in one click.
- After the database has been deployed, navigate to the Environment Variables tab of your deployed Strapi instance. Configure the following environment variables:
NODE_ENV=production
DATABASE_HOST=
DATABASE_PORT=5432
DATABASE_NAME=
DATABASE_USERNAME=
DATABASE_PASSWORD=
For details on how to connect to the deployed database, see this guide.
To develop, clone this repository to your local environment and run npm install && npm run develop; from the app directory. Porter will automatically handle CI/CD and propagate your changes to production on every push to the repository.
Join the Porter Discord community if you have any questions or need help.