Публикуем next.js проект
Задача - опубликовать проект на собственном сервере.
Это краткое руководство как легко настроить рабочее окружение нa сервере с операционной системой ubuntu 20.04.
В этом руководстве:
- Установим и настроим Nginx
- Установим Yarn
- Установим PM2 и настроим автоматический запуск.
- Установим Git и получим актуальную версию нашего проекта из удаленного репозитория.
Устанавливаем Nginx:
sudo apt install nginx
Установим yarn:
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
sudo apt-get update && sudo apt-get install yarn
Установим PM2 глобально:
yarn global add pm2
Установим Git:
sudo apt install git
Скопируем наш проект из удаленного репозитория и установим все зависимости:
git clone git@github.com:<ВАШЕ_ИМЯ>/<ИМЯ_ПРОЕКТА>.git
cd project
yarn install
После установки всех зависимостей необходимо собрать проект в рабочий билд командой:
yarn build
Теперь с помощью pm2 можем запустить наш проект
pm2 start yarn --name "nextjs" --interpreter bash -- start
Чтобы приложение всегда работало вводим команды:
pm2 startup
pm2 save
Обновление проекта:
git pull
yarn install
yarn build
pm2 restart nextjs
Настройка Nginx
Открываем файл конфигурации:
sudo nano /etc/nginx/sites-available/default
Базовая настройка:
server {
server_name my-cool-syte.com;
location / {
# reverse proxy for next server
proxy_pass http://localhost:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
Удачи!