১. শুরু করার আগে
ক্লাউড শেল হলো একটি ব্রাউজার-ভিত্তিক কমান্ড-লাইন টুল, যা আপনাকে গুগল ক্লাউড রিসোর্স অ্যাক্সেস করার সুযোগ দেয়। আপনার সিস্টেমে ক্লাউড এসডিকে এবং অন্যান্য টুল ইনস্টল না করেই ক্লাউড শেল আপনার ক্লাউড কনসোল প্রোজেক্ট ও রিসোর্সসমূহ সহজে পরিচালনা করতে সাহায্য করে।
আপনি আপনার ব্রাউজার থেকে বের না হয়েই ক্লাউড শেল ব্যবহার করে একটি স্প্রিং বুট অ্যাপ বিল্ড ও লঞ্চ করবেন। এটি করার জন্য, আপনি 'বিল্ডিং অ্যান অ্যাপ উইথ স্প্রিং বুট' থেকে নমুনা কোডটি ব্যবহার করবেন।
পূর্বশর্ত
- জাভা প্রোগ্রামিং ভাষা এবং টুলস সম্পর্কে পরিচিতি
- Vim, Emacs, এবং nano-এর মতো প্রচলিত লিনাক্স টেক্সট এডিটর সম্পর্কে জ্ঞান।
আপনি যা করবেন
- ক্লাউড শেল ব্যবহার করুন।
- ক্লাউড শেলে একটি সহজ স্প্রিং বুট অ্যাপ তৈরি করুন।
- ক্লাউড শেলের কোড এডিটর ব্যবহার করে অ্যাপটি সম্পাদনা করুন।
- ক্লাউড শেল থেকে অ্যাপটি চালু করুন।
আপনার যা যা লাগবে
- একটি গুগল ক্লাউড প্রকল্প
- একটি ব্রাউজার, যেমন গুগল ক্রোম
২. সেটআপ এবং প্রয়োজনীয়তা
স্ব-গতিতে পরিবেশ সেটআপ
- আপনার যদি আগে থেকে কোনো গুগল অ্যাকাউন্ট না থাকে, তাহলে আপনাকে অবশ্যই একটি তৈরি করতে হবে। ক্লাউড কনসোলে সাইন ইন করুন এবং একটি নতুন প্রজেক্ট তৈরি করুন।


প্রজেক্ট আইডিটি মনে রাখবেন, যা সমস্ত গুগল ক্লাউড প্রজেক্ট জুড়ে একটি অনন্য নাম (ছবিতে থাকা নামটি ইতিমধ্যে ব্যবহৃত হয়ে গেছে এবং আপনার জন্য কাজ করবে না, দুঃখিত!)। কোডল্যাবে পরে এটিকে PROJECT_ID হিসাবে উল্লেখ করা হবে।
- এরপরে, গুগল ক্লাউড রিসোর্স ব্যবহার করার জন্য আপনাকে ক্লাউড কনসোলে বিলিং চালু করতে হবে। কোডল্যাবটি চালাতে আপনার কয়েক ডলারের বেশি খরচ হওয়ার কথা নয়, কিন্তু আপনি যদি আরও রিসোর্স ব্যবহার করার সিদ্ধান্ত নেন বা সেগুলোকে চালু রাখেন, তাহলে খরচ আরও বেশি হতে পারে।
গুগল ক্লাউডের নতুন ব্যবহারকারীরা ৩০০ ডলারের একটি বিনামূল্যে ট্রায়ালের জন্য যোগ্য।
ক্লাউড শেল
এই ডেবিয়ান-ভিত্তিক ভার্চুয়াল মেশিনটিতে আপনার প্রয়োজনীয় সমস্ত ডেভেলপমেন্ট টুলস লোড করা আছে। এটি একটি স্থায়ী ৫ জিবি হোম ডিরেক্টরি প্রদান করে এবং গুগল ক্লাউডে চলে, যা নেটওয়ার্ক পারফরম্যান্স ও অথেনটিকেশনকে ব্যাপকভাবে উন্নত করে। এর মানে হলো, এই কোডল্যাবের জন্য আপনার শুধু একটি ব্রাউজার প্রয়োজন হবে (হ্যাঁ, এটি ক্রোমবুকেও কাজ করে)।
- ক্লাউড কনসোল থেকে ক্লাউড শেল সক্রিয় করতে, কেবল 'Activate Cloud Shell'-এ ক্লিক করুন।
(পরিবেশের জন্য ব্যবস্থা করতে এবং সংযোগ স্থাপন করতে মাত্র কয়েক মুহূর্ত সময় লাগা উচিত)।


ক্লাউড শেলে সংযুক্ত হওয়ার পর, আপনি দেখতে পাবেন যে আপনাকে ইতিমধ্যেই প্রমাণীকৃত করা হয়েছে এবং প্রজেক্টটি আপনার PROJECT_ID তে সেট করা আছে।
gcloud auth list
কমান্ড আউটপুট
Credentialed accounts: - <myaccount>@<mydomain>.com (active)
gcloud config list project
কমান্ড আউটপুট
[core] project = <PROJECT_ID>
যদি কোনো কারণে প্রজেক্টটি সেট করা না থাকে, তাহলে নিম্নলিখিত কমান্ডটি দিন:
gcloud config set project <PROJECT_ID>
আপনার PROJECT_ID খুঁজছেন? সেটআপের ধাপগুলিতে আপনি কোন আইডি ব্যবহার করেছিলেন তা দেখে নিন অথবা ক্লাউড কনসোল ড্যাশবোর্ডে এটি খুঁজে দেখুন:

ক্লাউড শেল ডিফল্টরূপে কিছু এনভায়রনমেন্ট ভেরিয়েবলও সেট করে, যা ভবিষ্যতে কমান্ড চালানোর সময় কাজে লাগতে পারে।
echo $GOOGLE_CLOUD_PROJECT
কমান্ড আউটপুট
<PROJECT_ID>
- অবশেষে, ডিফল্ট জোন এবং প্রজেক্ট কনফিগারেশন সেট করুন।
gcloud config set compute/zone us-central1-f
আপনি বিভিন্ন ধরনের জোন বেছে নিতে পারেন। আরও তথ্যের জন্য, অঞ্চল ও জোন দেখুন।
৩. একটি নতুন Spring Boot অ্যাপ চালু করুন
Spring Boot কমান্ড-লাইন টুল ইনস্টল করার পরে, আপনি একটি নতুন "Hello, World" ওয়েব অ্যাপ ইনিশিয়ালাইজ এবং বুটস্ট্র্যাপ করতে পারবেন।
$ curl https://start.spring.io/starter.tgz \ -d dependencies=web \ -d type=maven-project \ -d baseDir=helloworld | tar -xzvf -
এটি একটি নতুন ডিরেক্টরি তৈরি করে, যেখানে একটি নতুন মেভেন প্রজেক্টের পাশাপাশি মেভেনের pom.xml , একটি মেভেন র্যাপার এবং একটি অ্যাপ এন্ট্রি পয়েন্টও থাকে।
৪. কোড এডিটর ব্যবহার করে একটি নতুন RESTful সার্ভিস তৈরি করুন।
- ওপেন এডিটর-এ ক্লিক করে কোড এডিটরটি খুলুন।
ক্লাউড শেল মেনুতে। - এডিটরটি খোলার পর,
helloworld/src/main/java/com/example/demo/DemoApplication.javaফাইলটি খুঁজুন।

- কোডটি খোলার পর,
Helloসাড়া দেওয়ার জন্য একটি নতুন RESTful কন্ট্রোলার তৈরি করুন।DemoApplication.javaফাইলে, বর্তমানটির পাশাপাশি একটি নতুনHelloworldক্লাস ডেফিনিশন যোগ করুন।
src/main/java/com/example/demo/DemoApplication.java
package com.example;
...
// Add the import
import org.springframework.web.bind.annotation.*;
@SpringBootApplication
public class DemoApplication {
...
}
// Add the controller
@RestController
class Helloworld {
@GetMapping("/")
public String greet() {
return "Hello!";
}
}
- ফাইলটি সংরক্ষণ করুন!
৫. স্থানীয়ভাবে অ্যাপটি চালান
- কোড এডিটরে একটি টার্মিনাল খুলতে, এডিটর মেনু থেকে
Terminalএবং তারপরNew Terminalনির্বাচন করুন। - নিশ্চিত করুন যে
JAVA_HOMEসঠিক JDK সংস্করণে সেট করা আছে:
$ export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64/
- আপনি Spring Boot প্লাগইন ব্যবহার করে স্বাভাবিকভাবে Spring Boot অ্যাপটি চালু করতে পারেন।
$ cd $HOME/helloworld $ ./mvnw -DskipTests spring-boot:run

- অ্যাপটি চালু হওয়ার পর, ওয়েব প্রিভিউ-তে ক্লিক করুন।
ক্লাউড শেল টুলবারে, এরপর পোর্ট ৮০৮০-তে প্রিভিউ-তে ক্লিক করুন।

আপনার ব্রাউজারে একটি ট্যাব খোলে এবং আপনার চালু করা সার্ভারটির সাথে সংযোগ স্থাপন করে।

৬. অভিনন্দন
আপনি ক্লাউড শেল থেকে সরাসরি একটি নতুন স্প্রিং বুট জাভা ওয়েব অ্যাপ তৈরি ও চালু করতে শিখেছেন।