স্ফেরনে স্ট্যাটিক এবং ডাইনামিক ড্যাপস কীভাবে স্থাপন করবেন
Tags: shardeum
Published: 2024-02-16 06:35:10

## স্পেরন কি?
[স্পেরন](https://spheron.network/) হল একটি গেম পরিবর্তনকারী সমাধান যা বিকেন্দ্রীভূত অ্যাপ্লিকেশন (ড্যাপ) পরিকাঠামোতে বিপ্লব ঘটাচ্ছে। ওয়েব৩ ইনফ্রা-তে নিযুক্ত টুল এবং পরিষেবাগুলির ব্যাপক সেটের সাথে, স্পেরন ডেভেলপারদের ডিজিটাল ল্যান্ডস্কেপের গতিশীল চাহিদা মেটাতে সক্ষম করে। প্রথাগত ওয়েব২ পরিকাঠামোর বাইরে গিয়ে, স্পেরন ওয়েব হোস্টিং, স্টোরেজ এবং গণনার ক্ষমতা সহ বিস্তৃত পরিসরের পরিষেবা অফার করে, যা ওয়েব৩ ইকোসিস্টেমের একটি গুরুত্বপূর্ণ উপাদান হিসেবে কাজ করে। এর ব্যতিক্রমী পারফরম্যান্স শুধুমাত্র প্রতিদ্বন্দ্বী ওয়েব২ প্রতিদ্বন্দ্বী নয় বরং পরবর্তী প্রজন্মের অ্যাপ্লিকেশনের জন্য ওয়েব৩ প্রযুক্তির সম্ভাবনাও প্রদর্শন করে।

> _[তাদের ডকুমেন্টেশনের](https://docs.spheron.network/) মাধ্যমে স্পেরন সম্পর্কে আরও জানুন।_

## স্ফেরনে স্ট্যাটিক অ্যাপস কীভাবে স্থাপন করবেন?
স্ফেরনে স্ট্যাটিক অ্যাপ স্থাপন করা একটি সহজবোধ্য প্রক্রিয়া। স্পেরন এ আপনার স্ট্যাটিক অ্যাপ স্থাপন করতে এই পদক্ষেপগুলি অনুসরণ করুন:

১. **আপনার গিট প্রদানকারীকে সংযুক্ত করুন:**
আপনার গিট প্রদানকারীকে সংযুক্ত করা স্পেরন কে আপনার সংগ্রহস্থলগুলিকে সিঙ্ক করতে এবং যখনই নতুন আপডেট করা হয় তখন স্থাপনাগুলিকে ট্রিগার করতে দেয়৷ স্পেরন নিম্নলিখিত [গিট প্রদানকারীদের](https://docs.spheron.network/static/deployment/logs/) সমর্থন করে: গিটহাব, গিটল্যাব, এবং বিটবাকেট।

২. **আপনার প্রকল্প সেট আপ করুন:**
স্পেরন-এ একটি নতুন প্রকল্প তৈরি করুন এবং স্থাপনার জন্য আপনার পছন্দসই অ্যাপ সংগ্রহস্থল বেছে নিন।

৩. **ডিপ্লয়মেন্ট প্রোটোকল নির্বাচন করুন:**
আপনার স্ট্যাটিক অ্যাপ হোস্ট করার জন্য আপনার পছন্দসই প্রোটোকল নির্বাচন করুন। স্পেরন নিম্নলিখিত প্রোটোকল সমর্থন করে: আরউইভ, ফাইলকয়েন, এবং আইপিএফএস।

৪. **স্থাপনার সেটিংস কনফিগার করুন:**
স্পেরন স্বয়ংক্রিয়ভাবে সনাক্ত এবং আপনার জন্য এই সেটিংস অধিকাংশ কনফিগার করবে। আপনাকে ডেডিকেটেড বিভাগে পরিবেশ [ভেরিয়েবল যোগ করতে হবে](https://docs.spheron.network/static/projects/variables/)। প্রয়োজন হলে, আপনার প্রয়োজনীয়তা অনুযায়ী অবশিষ্ট পরামিতিগুলি সংশোধন করুন। এর মধ্যে রয়েছে ফ্রেমওয়ার্ক, শাখা, রুট ডিরেক্টরি, বিল্ড এবং আউটপুট সেটিংস এবং নোড ইঞ্জিন নির্বাচন করা।

৫. **ট্রিগার স্থাপনা:**
সমস্ত প্রয়োজনীয় সেটিংস কনফিগার করার পরে, স্থাপনার প্রক্রিয়া শুরু করুন। স্পেরন আপনার কোড আনবে, স্ট্যাটিক ফাইল তৈরি করবে এবং আপনার নির্দিষ্ট প্রোটোকলে সেগুলি স্থাপন করবে।

৬. **আপনার অ্যাপ অ্যাক্সেস করুন:**
একবার স্থাপনা সম্পূর্ণ হলে, আপনি স্পেরন দ্বারা জেনারেট করা ডোমেনের মাধ্যমে আপনার অ্যাপ অ্যাক্সেস করতে পারবেন। আপনার অ্যাপের জন্য [একটি কাস্টম ডোমেন সেট আপ](https://docs.spheron.network/static/projects/domain/) করার বিকল্পও রয়েছে৷

> _আরও তথ্যের জন্য আমাদের [ফ্রেমওয়ার্ক গাইড](https://docs.spheron.network/framework-guide/) দেখুন।_

## কিভাবে স্পেরন এ ডায়নামিক-অ্যাপস/সার্ভার স্থাপন করবেন?
আপনি ডকার হাব থেকে একটি ডকার ইমেজ ব্যবহার করছেন বা একটি মার্কেটপ্লেস অ্যাপ স্থাপন করছেন কিনা, স্ফেরনে গণনা দৃষ্টান্ত স্থাপন করা সহজ এবং অনায়াসে। স্পেরনে আপনার গণনা দৃষ্টান্ত স্থাপন করতে এই পদক্ষেপগুলি অনুসরণ করুন:

১. **আপনার ক্লাস্টার সেট আপ করুন:**
**ডকার হাব থেকে আমদানি** বা **মার্কেটপ্লেস অ্যাপ থেকে শুরু** নির্বাচন করে স্ফেরনে একটি নতুন ক্লাস্টার তৈরি করুন।

২. **ডকার হাবের জন্য:**
১. আপনার ক্লাস্টার এবং ডকার ইমেজের জন্য নাম লিখুন।
২. তারপর, ট্যাগ যোগ করুন এবং **পরবর্তী ক্লিক করুন**।
৩. আপনার প্রয়োজন অনুসারে উদাহরণ পরিকল্পনা নির্বাচন করুন এবং **পরিকল্পনা নির্বাচন করুন ক্লিক করুন**।
৪. নতুন **পোর্ট ম্যাপিং** তৈরি করুন। ধারক পোর্ট যোগ করুন, এবং আপনি এটি ম্যাপ করতে চান উন্মুক্ত পোর্ট নির্বাচন করুন.
৫. **এনভায়রনমেন্ট ভেরিয়েবল** যোগ করুন যদি থাকে। মানটি একটি গোপন কী হলে **সিক্রেট কী টগল** ব্যবহার করুন। আপনি গোপন কী টগল সক্ষম করলে, এটি ডাটাবেসে সংরক্ষিত হবে না।
৬. আপনার পছন্দের **অঞ্চল** নির্বাচন করুন যদি থাকে। আপনি একটি অঞ্চল যোগ না করলে, ধারকটি যে কোনো অঞ্চলে স্থাপন করা হবে।
৭. প্রয়োজনে আপনি উন্নত কনফিগারেশন যোগ করতে পারেন।
৮. স্থাপনা শুরু করতে **স্থাপন করুন এ ক্লিক করুন**।

৩. **মার্কেটপ্লেস অ্যাপের জন্য:**
১. মার্কেটপ্লেস থেকে আপনার পছন্দসই টেমপ্লেটটি বেছে নিন।
২. স্পেরন স্বয়ংক্রিয়ভাবে নির্দিষ্ট টেমপ্লেটের জন্য প্রস্তাবিত পরিকল্পনা নির্বাচন করবে।
৩. আপনি যদি পরিকল্পনা পরিবর্তন করতে চান তবে **পরিকল্পনা পরিবর্তন করুন ক্লিক করুন**।
৪. আপনার প্রয়োজন অনুসারে উদাহরণ পরিকল্পনা নির্বাচন করুন এবং **পরিকল্পনা নির্বাচন করুন ক্লিক করুন**।
৫. আপনার পছন্দের **অঞ্চল** নির্বাচন করুন যদি থাকে। আপনি একটি অঞ্চল যোগ না করলে, ধারকটি যে কোনো অঞ্চলে স্থাপন করা হবে।
৬. প্রয়োজনে আপনি অতিরিক্ত কনফিগারেশন যোগ করতে পারেন।
৭. স্থাপনা শুরু করতে **স্থাপন করুন এ ক্লিক করুন**।

> _আরও তথ্যের জন্য আমাদের [কম্পিউট ডকুমেন্টেশন](https://docs.spheron.network/compute/cluster/) চেকআউট করুন।_

## স্পেরন এসডিকে ব্যবহার করে কিভাবে আইপিএফএস এ আপলোড করবেন?

## ১. স্পেরন স্টোরেজ এসডিকে (নোডেজ পরিবেশের জন্য)

## স্থাপন

```
npm i @spheron/storage
```

## ব্যবহার

```
import { SpheronClient, ProtocolEnum } from "@spheron/storage";

const client = new SpheronClient({ token });

let currentlyUploaded = 0;

const { uploadId, bucketId, protocolLink, dynamicLinks } = await client.upload(
  filePath,
  {
    protocol: ProtocolEnum.IPFS,
    name,
    onUploadInitiated: (uploadId) => {
      console.log(`Upload with id ${uploadId} started...`);
    },
    onChunkUploaded: (uploadedSize, totalSize) => {
      currentlyUploaded += uploadedSize;
      console.log(`Uploaded ${currentlyUploaded} of ${totalSize} Bytes.`);
    },
  }
);
```

> _আরও তথ্যের জন্য আমাদের [স্টোরেজ এসডিকে ডকুমেন্টেশন](https://docs.spheron.network/sdk/storage/) দেখুন।_

## ২. স্পেরন ব্রাউজার এসডিকে আপলোড করুন (ব্রাউজার পরিবেশের জন্য)

## স্থাপন

```
npm i @spheron/browser-upload
```

## ব্যবহার

## সার্ভার
আপনাকে একটি এন্ডপয়েন্ট সহ একটি ওয়েব সার্ভার সেট আপ করতে হবে যা আপলোডের জন্য টোকেন আনতে ফ্রন্টএন্ড ব্যবহার করবে।

```
import { SpheronClient, ProtocolEnum } from "@spheron/storage";

...

app.get("/initiate-upload", async (req, res, next) => {
  try {
    const bucketName = "example-browser-upload"; // use your preferred name
    const protocol = ProtocolEnum.IPFS; // use your preferred protocol
    const token = process.env.SPHERON_TOKEN; // add your access token in .env or paste it here

    const client = new SpheronClient({ token });

    const { uploadToken } = await client.createSingleUploadToken({
      name: bucketName,
      protocol,
    });

    res.status(200).json({
      uploadToken,
    });
  } catch (error) {
    console.error(error);
    next(error);
  }
});
```

## ক্লায়েন্ট
`uploadToken` তৈরি করার জন্য আপনাকে আপনার সার্ভারে একটি অনুরোধ পাঠাতে হবে যা ব্রাউজার থেকে ফাইল আপলোড করতে ব্যবহার করা হবে।

```
import { upload } from "@spheron/browser-upload";

...

const response = await fetch(`<BACKEND_URL>/initiate-upload`); // get the temporary access token from server
const resJson = await response.json();
const token =  resJson.uploadToken;

let currentlyUploaded = 0;

const { uploadId, bucketId, protocolLink, dynamicLinks } = await upload(files, {
  token,
  onChunkUploaded: (uploadedSize, totalSize) => {
    currentlyUploaded += uploadedSize;
    console.log(`Uploaded ${currentlyUploaded} of ${totalSize} Bytes.`);
  },
});

...
```

> _আরও তথ্যের জন্য আমাদের [ব্রাউজার আপলোড এসডিকে](https://docs.spheron.network/sdk/browser/) চেকআউট করুন৷_

## কিভাবে স্পেরন সিএলআই ব্যবহার করে অ্যাপস তৈরি এবং স্থাপন করবেন?

## স্থাপন

## ম্যাক এবং লিনাক্সের জন্য
স্পেরন সিএলআই ইনস্টল করতে, আপনার টার্মিনালে নিম্নলিখিত কমান্ডটি চালান:

```
sudo npm install -g @spheron/cli
```

## উইন্ডোজের জন্য
স্পেরন সিএলআই ইনস্টল করতে, প্রশাসক মোড হিসাবে আপনার টার্মিনাল খুলুন এবং নিম্নলিখিত কমান্ডটি চালান:

```
npm install -g @spheron/cli
```

## ব্যবহার

## স্পেরন init
`spheron init` কমান্ড আপনাকে একটি নতুন স্পেরন প্রকল্প শুরু করতে দেয়। আপনার বর্তমান পাথে একটি `spheron.json` ফাইল তৈরি করা হয়েছে যা আপনার প্রকল্পের বর্ণনা দেয়। এটি `spheron publish` কমান্ড দ্বারা ব্যবহার করা হবে।

## ব্যবহার

```
spheron init
```

এই কমান্ডটি চালানোর পরে, একটি প্রম্পটার প্রদর্শিত হবে যা আপনাকে প্রোটোকল নির্বাচন করতে, প্রকল্পের নাম যুক্ত করতে, পথ যোগ করতে এবং কাঠামো নির্বাচন করতে দেবে। এটি দেখতে কেমন হবে তা এখানে:

`**? Project name: (Code)
? Upload protocol: (Use arrow keys)
❯ Arweave
  Filecoin
  IPFS**`

## স্পেরন প্রকাশ
`spheron publish` কমান্ড আপনাকে আপনার প্রোজেক্টের `spheron.json` ফাইলে বর্ণিত কনফিগারেশন ব্যবহার করে আপনার প্রোজেক্ট আপলোড করতে দেয়।

## ব্যবহার

```
spheron publish
```

নিশ্চিত করুন যে আপনি `spheron publish` কমান্ড চালানোর আগে একটি প্রোডাকশন বিল্ড তৈরি করেছেন।

ফলাফলটি কেমন হবে তার একটি উদাহরণ এখানে দেওয়া হল:

**`Spheron CLI 1.0.7
Publishing your dapp to IPFS 🚀
Uploading directory build
Upload started, ID of deployment: 643fce207c3c7a0012df33a7
⠙ Uploading to IPFS
✓ Success! Upload finished !
Here are upload details:
Upload ID: 643fce207c3c7a0012df33a7
Bucket ID: 643fce207c3c7a0012df33a5
Protocol Link: https://bafybeicrjwhn6nifl7tcuhkcitquvpumj426qa7r7ppcya5skmqly5n2la.ipfs.sphn.link
Dynamic Links: https://testapp-edab50.spheron.app`**

> _আরও তথ্যের জন্য আমাদের [সিএলআই ডকুমেন্টেশন](https://docs.spheron.network/cli/) চেকআউট করুন।_

## কিভাবে স্পেরন ব্যবহার করে আইপিএফএস থেকে সামগ্রী দেখতে এবং পুনরুদ্ধার করবেন?

## ডেডিকেটেড গেটওয়ে
[ডেডিকেটেড গেটওয়েগুলি](https://docs.spheron.network/gateways/) হল আইপিএফএস গেটওয়েগুলি বিশেষভাবে দ্রুত গতি এবং বর্ধিত হারের সীমা অফার করে নেটওয়ার্ক জুড়ে পিন করা সামগ্রীতে অ্যাক্সেস উন্নত করার জন্য ডিজাইন করা হয়েছে৷

ডেডিকেটেড গেটওয়ে ব্যবহার করে বেশ কিছু সুবিধা পাওয়া যায়:

- উন্নত গতি
- বর্ধিত হারের সীমা
- হোয়াইটলেবেলিং গেটওয়ে
- যেকোনো আইপিএফএস নোড থেকে সামগ্রী পরিবেশন করুন

## একটি ডেডিকেটেড গেটওয়ে তৈরি করুন
একটি ডেডিকেটেড গেটওয়ে তৈরি করতে এই পদক্ষেপগুলি অনুসরণ করুন:

১. স্পেরন এ লগ ইন করুন এবং নেভবার এ **গেটওয়ে** বিভাগে নেভিগেট করুন।
২. একটি নতুন গেটওয়ে তৈরি করতে **জেনারেট** এ ক্লিক করুন।
৩. আপনার গেটওয়ের জন্য একটি নাম লিখুন এবং **তৈরি করুন** ক্লিক করুন।

## কিভাবে আপনার গেটওয়ে ব্যবহার করবেন?
আপনার ডেডিকেটেড গেটওয়ের মাধ্যমে সামগ্রী অ্যাক্সেস করতে, কেবল এই পদক্ষেপগুলি অনুসরণ করুন:

১. আপনি যে ফাইলটি দেখতে চান তার সিআইডি (কন্টেন্ট আইডেন্টিফায়ার) পান।
২. নিম্নলিখিত বিন্যাসে আপনার গেটওয়ে ইউআরএল-এ সিআইডি যুক্ত করুন:

```
https://{gateway-name}.spheron.link/ipfs/{cid}
```

> _আরও তথ্যের জন্য আমাদের [গেটওয়ে ডকুমেন্টেশন](https://docs.spheron.network/gateways/) চেকআউট করুন।_

## আরও সম্পদ

- আরও জানতে [আমাদের প্ল্যাটফর্মে](https://spheron.network/) যান।
- বিস্তারিত তথ্যের জন্য আমাদের ব্যাপক [ডকুমেন্টেশন](https://docs.spheron.network/) অ্যাক্সেস করুন।
- সর্বশেষ আপডেট এবং খবরের জন্য [টুইটারে](https://twitter.com/SpheronFDN) আমাদের অনুসরণ করুন।
- নিবেদিত সমর্থন এবং সহায়তার জন্য আমাদের [ডিসকর্ড সম্প্রদায়ে](https://discord.com/invite/ahxuCtm) যোগ দিন।

এই বিষয় সম্পর্কে আরো জানতে, বিস্তারিত তথ্যের জন্য স্পেরন পৃষ্ঠাটি দেখুন। [https://docs.shardeum.org/storage/spheron](https://docs.shardeum.org/storage/spheron)

@shardeum #ShardeumIsBorderless