Пошаговое руководство по установке Strapi с PostgreSQL на AWS

21 ноября 2024 г.
Если вы хотите использовать надежную облачную инфраструктуру AWS для развертывания Strapi с PostgreSQL, это руководство проведет вас через весь процесс. От настройки базы данных до развертывания Strapi на EC2 – всё в одном месте.
1. Подготовка
Перед началом убедитесь, что у вас есть:
- Аккаунт AWS: Активный и действующий аккаунт в AWS.
- Необходимые инструменты:
2. Настройка PostgreSQL на AWS RDS
Создание RDS-инстанса
- Войдите в консоль AWS и перейдите в RDS.
- Нажмите Создать базу данных и выберите PostgreSQL в качестве движка.
- Выберите опцию "Бесплатный уровень" (если доступно).
- Настройте базу данных, включая имя пользователя и пароль.
- В разделе "Подключение" включите публичный доступ, если это необходимо.
Настройка групп безопасности
- Перейдите в Группы безопасности EC2.
- Создайте новую группу или отредактируйте существующую, чтобы разрешить входящий трафик на порт 5432 для PostgreSQL.
3. Запуск инстанса EC2
Настройка инстанса
- Запустите EC2-инстанс через консоль AWS.
- Выберите AMI Ubuntu 22.04 LTS.
- Выберите подходящий тип инстанса (например,
t2.small). - Настройте хранилище, теги и сеть.
Подключение к инстансу EC2
- Используйте SSH для подключения к инстансу:
ssh -i "путь/к/ключу.pem" ubuntu@ваш-публичный-ip
4. Установка зависимостей
Обновите инстанс EC2 и установите необходимые пакеты:
sudo apt update && sudo apt upgrade -y
sudo apt install -y git
curl -sL https://deb.nodesource.com/setup_16.x | sudo -E bash -
sudo apt install -y nodejs
npm install -g yarn # необязательно
5. Развертывание Strapi
Создание проекта Strapi
npx create-strapi-app my-project --quickstart
cd my-project
npm install pg
Настройка PostgreSQL
Отредактируйте файл config/database.js:
module.exports = ({ env }) => ({
connection: {
client: 'postgres',
connection: {
host: env('DATABASE_HOST', 'ваш-rds-endpoint'),
port: env.int('DATABASE_PORT', 5432),
database: env('DATABASE_NAME', 'имя-вашей-базы-данных'),
user: env('DATABASE_USERNAME', 'ваш-имя-пользователя'),
password: env('DATABASE_PASSWORD', 'ваш-пароль'),
ssl: env.bool('DATABASE_SSL', false),
},
debug: false,
},
});
Запуск Strapi
npm run develop
Доступ к административной панели: http://ваш-публичный-ip:1337/admin.
6. Настройка Nginx (опционально)
Установите Nginx:
sudo apt install -y nginx
Настройте обратный прокси для Strapi на порту 1337.
7. Включение SSL (опционально)
Установите Certbot:
sudo apt install -y certbot python3-certbot-nginx
Запустите:
sudo certbot --nginx -d ваш-домен.com -d www.ваш-домен.com
Заключение
Следуя этому руководству, вы можете успешно развернуть Strapi с PostgreSQL на AWS и использовать возможности масштабируемости и надежности AWS. Для производственных сред рассмотрите возможность добавления мониторинга и авто-масштабирования для дальнейшей оптимизации производительности.