Node.js
შესავალი
Node.js არის სერვერული პლატფორმა, რომელიც უშვებს JavaScript-ში დაწერილ აპლიკაციებს.
პირველ რიგში, საჭიროა Node.js-ის ინსტალაცია:
- გადადით "Settings" -> "Applications"

- დააჭირეთ ღილაკს "Install" Node.js-ის საჭირო ვერსიისთვის

შექმენით ვებსაიტი:
- აირჩიეთ შაბლონი Node.js ვებსაიტისთვის

- მიუთითეთ დომენი და მასთან დაკავშირებული პარამეტრები. კონფიგურაციის ეტაპზე შეგიძლიათ შეცვალოთ DB, FTP მომხმარებელი და Backend

- ატვირთეთ აპლიკაციის ფაილები ვებსაიტის დირექტორიაში
- დამოკიდებულებების და საინსტალირებლად გაუშვით
npm20.15.1 installTerminal-ში (FASTPANEL®-ისთვის საჭიროა ttyd აპლიკაციის ინსტალაცია)

- გადატვირთეთ Node.js საიტის დაფაზე გადასვლით და შემდეგ "Services" სექციის გახსნით.

Express framework
მოდით, Express framework-ის მაგალითზე შევქმნათ მარტივი ვებ სერვერი:
- დაუკავშირდით სერვერს SSH-ით, როგორც მომხმარებელი, რომელიც ფლობს საიტს (FASTPANEL®-ისთვის შეგიძლიათ გამოიყენოთ ttyd აპლიკაცია)
- შექმენით ფაილი
app.jsვებსაიტის დირექტორიაშ ი და შეავსეთ იგი შემდეგი კოდით:
const express = require('express');
const app = express();
const PORT = process.env.SERVICE_PORT;
app.get('/', (req, res) => {
res.send('Hello! This is my first server on Node.js + Express 🚀');
});
app.listen(PORT, () => {
console.log(`Server is running at http://localhost:${PORT}`);
});
- ვებსაიტის დირექტორიაში გაუშვით ბრძანება express-ის დასაინსტალირებლად
npm20.15.1 install express
- გადადით საიტის დაფაზე, შემდეგ კი Services სექციაში
- გადატვირთეთ სერვისი
- შეამოწმეთ ვებსაიტი
Docusaurus
მოდით, Docusaurus ვებაპლიკაციის მაგალითზე მოვარგოთ პარამეტრები:
- დაუკავშირდით სერვერს SSH-ით, როგორც მომხმარებელი, რომელიც ფლობს საიტს (FASTPANEL®-ისთვის შეგიძლიათ გამოიყენოთ ttyd აპლიკაცია)
- ვებსაიტის დირექტორიაში გაუშვით Docusaurus-ის ინსტალაცია
npx20.15.1 create-docusaurus -j ./docs
-
როცა შემოგთავაზებთ შაბლონის არჩევას, უპასუხეთ classic (recommended)
-
ინ სტალაციის შემდეგ შეცვალეთ ერთი ხაზი ფაილში
docs/package.json
"start": "docusaurus start",
# replace with
"start": "docusaurus start --port $SERVICE_PORT",
$SERVICE_PORT არის სისტემური ცვლადი, რომელიც დაყენებულია FASTPANEL®-ში
-
მართვის პანელში გადადით "site settings" -> "Backend"
-
აირჩიეთ Standalone ან PM2 დამმუშავებელი.
-
აირჩიეთ სასურველი Node.js ვერსია.
-
მიუთითეთ სამუშაო საქაღალდე
docs -
Launch command ველში შეიყვანეთ:
npm run start -
შეინახეთ. დაელოდეთ აპლიკაციის დაკომპილირებას (ინფორმაცია გამოჩნდება ლოგებში). შეამოწმეთ ვებ საიტი
Next.js
Next.js-ის გამოყენებით Node.js 20.19-თან ერთად, მოდით შევქმნათ მარტივი ვებ სერვერი:
- დაუკავშირდით სერვერს SSH-ით, როგორც მომხმარებელი, რომელიც ფლობს ვებსაიტს (FASTPANEL®-ში ასევე შეგიძლიათ გამოიყენოთ ttyd აპლიკაცია).
- ვებსაიტის დირექტორიაში გაუშვით პროექტის ინიციალიზაციის ბრძანება:
yarn20.19.4 init -y
yarn20.19.4 add next react react-dom
- დაამატეთ scripts ბლოკი ფაილში
package.json:
"scripts": {
"dev": "next dev -p $SERVICE_PORT",
"build": "next build",
"start": "next start -p $SERVICE_PORT"
}
- შექმენით დირექტორია
pagesდა მის შიგნით დაამატეთ ფაილი სახელადindex.js:
mkdir pages
cat <<EOF > pages/index.js
export async function getServerSideProps() {
return {
props: {
nodeVersion: process.version,
port: process.env.SERVICE_PORT || 3000,
},
};
}
export default function Home({ nodeVersion, port }) {
return (
<div style={{
fontFamily: 'sans-serif',
textAlign: 'center',
marginTop: '20vh'
}}>
<h1>✅ It works!</h1>
<p>Next.js app running on Node.js {nodeVersion}</p>
<p>Port: {port}</p>
</div>
);
}
EOF
- გაუშვით პროექტის აგება.
yarn20.19.4 build
- მართვის პანელში გადადით "site settings" -> "Backend"
- აირჩიეთ Standalone ან PM2 დამმუშავებელი.
- აირჩიეთ სასურველი Node.js ვერსია.
- Launch command ველში შეიყვანეთ:
yarn run start. - შეინახეთ. დაელოდეთ აპლიკაციის დაკომპილირებას (ინფორმაცია გამოჩნდება ლოგებში). შეამოწმეთ ვებსაიტი
დამატებითი ინფორმაცია
Standalone რეჟიმში Node.js პროცესი იშვება თქვენი სკრიპტების შესასრულებლად.
PM2 რეჟიმში Node.js პროცესების, ლოგებისა და სისტემური დატვირთვის სამართავად გამოიყენება PM2 პროცესების მენეჯერი.
ეს რეჟიმი ასევე გაძლევთ საშუალებას მიუთითოთ worker-ების რაოდენობა — ანუ Node.js პროცესების რაოდენობა, რომლებიც ამუშავებენ სერვერზე შემომავალ მოთხოვნებს.
გარდა ამისა, ეს რეჟ იმი უზრუნველყოფს Enable file watch ოფციას — PM2 ავტომატურად გადატვირთავს თქვენს აპლიკაციას, როცა ფაილი შეიცვლება მიმდინარე დირექტორიაში ან მის ქვეკატალოგებში. გთხოვთ გაითვალისწინოთ, რომ ამ რეჟიმს მოაქვს დამატებითი სისტემური დატვირთვა და არ არის რეკომენდებული production გარემოსთვის.
ანალოგიურად, შეგიძლიათ დააკონფიგურიროთ აპლიკაცია, თუ მას YARN სჭირდება NPM-ის ნაცვლად
თქვენ შეგიძლიათ თქვენი პროექტის package.json-ში ჩამოთვლილი დამოკიდებულებების ინსტალაცია YARN-ის ან NPM-ის გამოყენებით პირდაპირ FASTPANEL®-იდან. ამისთვის გახსენით ვებსაიტის ბარათი და გადადით Services სექციაში:

ლოგები
Node.js აპლიკაციას შეუძლია ლოგების გენერირება. FASTPANEL®-ში ისინი მდებარეობს საიტის დაფაზე, Logs სექციაში, "Backend log" ჩანართში
კონსოლის ბრძანებები
Node.js-ის FASTPANEL®-ში ინსტალაციის შემდეგ, მომხმარებლებს შეუძლიათ თავიანთ პროექტებთან მუშაობა ისეთი კონსოლის ბრძანებებით, როგორიცაა:
- pm2
- yarn20.15.1
- npx20.15.1
- npm20.15.1
- node20.15.1
მაგალითი:
$ npm20.15.1 list
node-socket-port-server@1.0.0 /var/www/node_user/data/www/node.site
└── express@4.21.2
$ pm2 ls
┌────┬─────────────┬─────────────┬─────────┬─────────┬──────────┬────────┬──────┬───────────┬──────────┬──────────┬──────────┬──────────┐
│ id │ name │ namespace │ version │ mode │ pid │ uptime │ ↺ │ status │ cpu │ mem │ user │ watching │
├────┼─────────────┼─────────────┼─────────┼─────────┼──────────┼────────┼──────┼───────────┼──────────┼──────────┼──────────┼──────────┤
│ 0 │ amazing_site│ default │ 1.0.0 │ cluster │ 9355 │ 2m │ 0 │ online │ 0% │ 62.4mb │ user │ disabled │
│ 1 │ amazing_site│ default │ 1.0.0 │ cluster │ 9362 │ 2m │ 0 │ online │ 0% │ 62.5mb │ user │ disabled │
└────┴─────────────┴─────────────┴─────────┴─────────┴──────────┴────────┴──────┴───────────┴──────────┴──────────┴──────────┴──────────┘
თითოეული ბრძანების სახელი მოიცავს იმ Node.js ვერსიის ნომერს, რომელიც ინსტალირებულია. ამ მაგალითში ხელმისაწვდომი ვერსიაა Node.js 20.15.1.