forked from UKSOURCE/hailearning.edu.vn
add standalone code
This commit is contained in:
3
.gitignore
vendored
3
.gitignore
vendored
@@ -42,4 +42,5 @@ next-env.d.ts
|
||||
|
||||
#vs code
|
||||
/.vscode
|
||||
package-lock.json
|
||||
package-lock.json
|
||||
standalone-deploy.tar.gz
|
||||
@@ -2,6 +2,7 @@ import type { NextConfig } from "next";
|
||||
|
||||
const nextConfig: NextConfig = {
|
||||
/* config options here */
|
||||
output: "standalone",
|
||||
};
|
||||
|
||||
export default nextConfig;
|
||||
|
||||
43
standalone-build.sh
Executable file
43
standalone-build.sh
Executable file
@@ -0,0 +1,43 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
echo "=== Next.js Standalone Build ==="
|
||||
|
||||
APP_DIR=$(pwd)
|
||||
BUILD_DIR=".next"
|
||||
STANDALONE_DIR=".next/standalone"
|
||||
|
||||
echo "1. Installing dependencies..."
|
||||
npm install
|
||||
|
||||
echo "2. Building Next.js..."
|
||||
npm run build
|
||||
|
||||
echo "3. Preparing standalone structure..."
|
||||
|
||||
# ensure directories exist
|
||||
mkdir -p $STANDALONE_DIR/.next
|
||||
|
||||
# copy static assets
|
||||
echo "Copying static assets..."
|
||||
cp -r $BUILD_DIR/static $STANDALONE_DIR/.next/ 2>/dev/null || true
|
||||
|
||||
# copy public folder
|
||||
if [ -d "public" ]; then
|
||||
echo "Copying public folder..."
|
||||
cp -r public $STANDALONE_DIR/
|
||||
fi
|
||||
|
||||
echo "4. Creating deploy package..."
|
||||
|
||||
tar -czf standalone-deploy.tar.gz \
|
||||
-C $STANDALONE_DIR . \
|
||||
-C $APP_DIR public 2>/dev/null || true
|
||||
|
||||
echo ""
|
||||
echo "Build completed."
|
||||
echo "Deploy file: standalone-deploy.tar.gz"
|
||||
echo ""
|
||||
echo "Run on server:"
|
||||
echo "PORT=3005 node server.js"
|
||||
Reference in New Issue
Block a user