0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Ubuntu Nginx Next.jsをデプロイ

Last updated at Posted at 2024-08-31

アプリケーションを配置するディレクトリを/var/wwwの下に作成します。
sudo mkdir -p /var/www/your-app
Githubからなら
sudo git clone https://github.com/your-username/your-repo.git /var/www/your-app

アプリケーションのディレクトリに適切な権限を設定します。
sudo chown -R www-data:www-data /var/www/your-app
sudo chmod -R 755 /var/www/your-app

ディレクトリに移動し、依存関係をインストール
cd /var/www/your-app
npm install
npm run build

Next.jsアプリを起動します。通常はpm2などのプロセスマネージャーを使用してデーモン化します。
pm2をインストールしていない場合
npm install -g pm2
してるなら
pm2 start npm --name "nextjs-app(名前はなんでもOk)" -- run start

新しいNginxの設定ファイルを作成します。
sudo nano /etc/nginx/sites-available/your-app

server {
    listen 80;
    server_name your-domain.com; # あなたのドメインに置き換えてください。

    location / {
        proxy_pass http://localhost:3000; # Next.jsアプリが動作するポート
        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;
    }
}

サイトの設定を有効化し、Nginxの設定をテストします。
sudo ln -s /etc/nginx/sites-available/your-app /etc/nginx/sites-enabled/
sudo nginx -t

設定が正しければ、Nginxを再起動します。
sudo systemctl restart nginx

Nginxで使用するポートをファイアウォールで許可します。
sudo ufw allow 'Nginx Full'

DONE!

何か変更したら

共通

cd /var/www/app-name
git pull origin main
git add .
git commit -m "message"
git pull origin main

UbuntuマシンそのままVer

pm2 list
pm2 stop <id>
npm run build
pm2 start npm --name "app-name" -- run start

マシン再起動

再起動コマンド
sudo reboot

//ufw有効化
sudo ufw enable

//Nginx Fullが解放されているか確認
sudo ufw status

//アプリディクトリに移動
cd /var/www/app_name

//セットアップ
npm run build
pm2 start npm --name "app-name" -- run start

DONE!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?