গোস্ট ব্লগকে গিটহাবে হোস্ট করার পরিপূর্ণ গাইডলাইন

কেমন আছো তোমরা আশা করি ভাল। অনেক দিন থেকে কোন ব্লগে লেখালেখি করি না। তো আজকের হেডার দেখেই বুঝতে পেরেছ কি নিয়ে আজকের পোস্ট। হ্যাঁ আমি দেখাবো কিভাবে গিটহাবেব্লগিং প্ল্যাটফর্ম গোস্টহোস্ট করা যায়।

তার আগে আমি কিছু জিনিস ক্লিয়ার করে নেই (যারা জান না তাদের জন্য)

প্রথমে গোস্ট কি ?

এর উত্তর টি অনেক সহজ এবং অনেকেই জান। আর যারা জান না তারা জেনে নাও। যে

Ghost হল নতুন এবং ব্লগিং দুনিয়ায় আলোড়ন সৃষ্টি করা একটি প্ল্যাটফর্ম ।এটা একটা দারুন ওপেনসোর্স ব্লগিং প্ল্যাটফর্ম, যা শুধুমাত্র ব্লগিং/প্রকাশনার জন্য তৈরি করা হয়েছে।

Ghost সবচেয়ে বেশি জনপ্রিয় এর দ্রুতগতির জন্য। ওয়ার্ডপ্রেস ব্লগ এর চেয়ে Ghost প্যাটফরমের ব্লগ কয়েকগুন বেশি দ্রুতগতির।

আর গোস্ট সম্পর্কে আরও বিস্তারিত জানতে নিচের লিঙ্ক গুলো দেখতে পার।

টেকটিউনঃ ১ http://www.techtunes.com.bd/web-development/tune-id/282379

টেকটিউনঃ ২ http://www.techtunes.com.bd/internet/tune-id/296730

উইকিপিডিয়াঃ http://en.wikipedia.org/wiki/Ghost_%28blogging_platform%29

গিটহাব (Github) কি ?

এটাও অনেকে জান ।

গিটহাব (github) হচ্ছে ওয়েবভিত্তিক গিট রিপজিটরি হোস্টিং সেবা, যা গিট এর ডিস্ট্রিবিউটেড রিভিশন কন্ট্রোল এবং সোর্স কোড ম্যানেজমেন্ট (এসসিএম) এর কার্যকারিতা এবং ফিচার উপস্থাপন করে। গিটের মত কমান্ড লাইন নয়, বরং গিটহাবে পাবে ওয়েবভিত্তিক গ্রাফিক্যাল ইন্টারফেস এবং ডেক্সটপ আর মোবাইলের জন্য ক্লায়েন্ট। আরও সহজ করে বলতে গেলেঃ বন্ধু, সহকর্মী, সহপাঠী এমনকি পুরোপুরি অপরিচিত কাউকে আপনার কোড শেয়ার করার একটি উত্তম জায়গা হচ্ছে গিটহাব। আট মিলিয়নেরও বেশি ব্যবহারকারী একত্রে গিটহাব ব্যবহার করে চমৎকার সব জিনিস তৈরি করছে।

গিটহাব ফ্রি এবং পেইড দুইরকমই হোস্টিং করে। ব্যক্তিগত রিপজিটরির জন্য সাধারণত পেইড করতে হয়। গিটহাব মূলত ওপেনসোর্স সফটওয়্যার প্রোজেক্ট হোস্টিং করে।

আরও জানতে পারবে।

প্রোগ্রামিং ও অন্যান্যঃ গিট ও গিটহাব

উইকিপিডিয়াঃ http://en.wikipedia.org/wiki/GitHub

এবং লোকাল হোস্ট কি ?

এই বিষয়টা এত ভেঙ্গে বলতে পারছি না (আমি নিজেও কিছুটা কনফিউসড)। কিন্তু এটা অনেকটা এরকম যে আমরা মূলত একটা সার্ভার এ ওয়েবসাইট হোস্ট করে চালাই তাইনা। কিন্তু লোকাল হোস্ট বলতে আমরা নিজেদের কম্পিউটার এ একটা লোকাল প্ল্যাটফর্ম তৈরি করে ওয়েব সাইটটা হোস্ট করাটাই লোকাল সার্ভার। আরও বিস্তারিত জানতে চাইলে

উইকিপিডিয়াঃ http://en.wikipedia.org/wiki/Localhost

এ যেতে পার। (কিন্তু এগুলো না জানলেও এমন মহা বাংলা অশুদ্ধ হয়ে যাবে না। )

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

গোস্ট ইন্সটলেশন।

যা যা লাগবেঃ

১। উবুন্টু ইন্সটলেড একটা পিসি। (ভার্চুয়াল বক্স হলেও চলবে)

২। হালকা পাতলা টার্মিনাল সম্পর্কে আইডিয়া

৩। ইন্টারনেট কানেকশন। (থ্রিজি হলে ভাল হয়)

৪। আর অনেক ধৈর্য লাগবে।

প্রথমে উবুন্টুতে টার্মিনাল ওপেন কর। যাদের উবুন্টু নাই তারা ভার্চুয়াল সফটওয়্যার ব্যবহার করতে পার। আর যারা উবুন্টুতে একেবারে নতুন তারা আদনান কাইয়ুম ভাইয়ের সহজ উবুন্টু শিক্ষা গ্রহণ করতে পার।

তার পর গোস্ট ইন্সটলেশনের জন্য কিছু এক্সট্রা কম্পোনেন্ট দরকার পরে। এর জন্য নিচের কোড গুলো একটা একটা করে রান করতে হবে।

তাই প্রথমে উবুন্টু আপডেট করতে হবে

sudo apt-get update
sudo apt-get upgrade -y
sudo aptitude install -y zip vim wget

মূলত গোস্ট টি node.js ভিত্তিক একটা প্ল্যাটফর্ম। তাই এর জন্য Node.js এবং এর সাথে আরও কিছু দরকারি ডিপেন্সি লাগে। তাই

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install nodejs

এখন আমরা মুল গোস্টটাকে ডাউনলোড এবং ইন্সটল করব।

sudo mkdir -p /var/www/
cd /var/www/
sudo wget https://ghost.org/zip/ghost-latest.zip
sudo unzip -d ghost ghost-latest.zip
cd ghost/
sudo npm install --production

এখন গোস্টটি রান করতে পার। তাই নিচের কোড টি দিয়ে

npm start

তোমার লোকাল হোস্ট স্টার্ট হয়ে গেছে এটাকে অনেকটা নিচের ছবিটার মত লাগবে। এখন এটি এই অবস্থাতে রাখ বন্ধ বা অন্য কিছু কোর না। যতক্ষন এটা ওপেন থাকবে ততক্ষণ লোকাল হোস্ট কাজ করবে।

আরেকটা জিনিস মনে রাখবে যে তোমার টার্মিনাল কমান্ড গুলো /var/www/ghost/ এ অবস্থান করবে। অনেকটা নিচের মত দেখাবে ।

ghost@user-name :/var/www/ghost$

এখন ব্রাউজার এ 127.0.0.1:2368/ghost এ গেলে নিচের মত একটা একটা এডমিন প্যানেল পাবে সেখানে রেজিস্টার কর।

এখন তোমার গোস্ট ইন্সটল হয়ে গেছে। এটা স্টার্ট হয়েছে এবং তুমি লগিন ও করে ফেলেছ। এটাকে এখন এইভাবে ওপেন রাখ।

এখন পরবর্তি কাজ সেটাকে গিটহাবে আপলোড করা। ভুলেও গোস্ট রান করা টার্মিনাল ট্যাবটি অফ করে এন্টার করবে না।

গিটহাব এবং বুস্টার ইন্সটলেশন।

যেহেতু আমরা গিটহাবে আমাদের ওয়েবসাইট টি হোস্ট করব সেহেতু আমাদের অবশ্যই একটা আকাউন্ট থাকা লাগবে এবং আমরা যে লিনাক্সে গোস্ট ইন্সটল দিলাম সেটাকে গিটহাবে আপলোড করতে চাইলে অবশ্যই সে পিসিতে গিটহাব থাকা অবশ্যক । আর বুস্টার লাগবে কারণ সেটা আমাদের জন্য এটা স্ট্যাটিক ওয়েব সাইট জেনারেট করবে। কারণ আমরা যদি আন-জেনারেট করা গোস্ট সোর্স যদি আপলোড করি। তো সেটা কিন্তু আমাদের শুধু raw ছাড়া অন্য কিছু দেখাবে না। আর তুমি যদি গোস্ট এর সোর্স যদি গিটে পুশ কর তাহলে তো হবে না তোমার ওয়েব সাইটটাও তো রেন্ডার করতে হবে। আর তার জন্য বুস্টার স্ট্যাটিক সাইট জেনারেট করে। তাই কাজে লেগে পরি।

গিটহাব ইন্সটলেশন

এখন তুমি তোমার নামে একটা https://github.com/ গিয়ে অ্যাকাউন্ট খুলে ফেলো।

https://i1.wp.com/adam.sardar.me.uk/wp-content/uploads/2011/12/xcp-github-logo.png

তারপর গিটহাব ইন্সটল করতে হবে এর জন্য টার্মিনাল নতুন একটি উইন্ডো খুলে নিচের কোডটি এন্টার কর।

sudo apt-get install git

এখন নাম এবং ইমেইল দিতে হবে তার জন্য নিচের কোড গুলো একটা একটা করে এন্টার কর।

git config --global user.name "YOUR NAME"

git config --global user.email "YOUR EMAIL ADDRESS"

Note: এখন YOUR NAME এর যায়গায় git hub user-name দিতে হবে (ডাবল কোটেশন সহ ” ” ) তারপর । এরপর YOUR EMAIL ADDRESS এর যায়গায় git hub এ রেজিস্টার করা email দিতে হবে (ডাবল কোটেশন সহ “” )

চেকিং এর জন্য নিচের কোডটি এন্টার কর দেখতে পাবে তোমার নাম এবং ইমেইল দেখাবে

git config --list

এখন আবার গিটহাবে যাও এবং একটা নতুন রিপোসিটরি তৈরি কর। এবং যার নাম দিবে অনেকটা yourname.github.io এবং yourname.github.io –ই হবে তোমার গিটহাব স্ট্যাটিকয়েব ইউআরএ

বুস্টার ইন্সটেলেশন।

বুস্টার হল গোস্ট ব্লগের জন্য নির্মিত একটা টুল যা স্ট্যাটিক সাইট জেনারেট করে। আসলে তুমি যদি গোস্ট এর সোর্স যদি গিটে পুশ কর তাহলে তো হবে না তোমার ওয়েব সাইট টা রেন্ডার করতে হবে। আর তার জন্য বুস্টার স্ট্যাটিক সাইট জেনারেট করে। আর আর এখানে তুমি এডমিন প্যানেল পাবে না। তুমি সাইটের এডিট করতে চাইলে বা পোস্ট করতে চাইলে তোমাকে 127.0.0.1:2368 এর অ্যাডমিন প্যানেলে গিয়ে করতে হবে।

pip ইন্সটল করতে হবে। এটা একটা পাইথন ম্যানেজমেন্ট প্যাকেজ। একটা একটা নিচের কোড গুলো হিট করতে থাক।

sudo apt-get install python-pip python-dev build-essential
pip install --upgrade pip
sudo pip install --upgrade virtualenv

এখন pip দিয়ে বুস্টার ইন্সটল কর।

sudo pip install buster

এখন কাজ প্রায় শেষ এখন শুধু স্ট্যাটিক ওয়েবসাইট টি জেনারেট করে আপলোড করে দিলেই হল। তার জন্য টার্মিনালে নিচের কোড গুলো টাইপ কর।

এটা তোমার কোন জায়গায় আপলোড তা নির্দিষ্ট করে দেয়।
buster setup
এখন তোমরা দেখছ Enter the Github repository URL: সেখানে তোমার রিপোসিটরি এর লিঙ্ক দিতে হবে।

গিটহাবে গিয়ে তোমাদের রিপোসিটরি এর পেজে যাও সেখানে নিচে ছবির মত একটা বক্স পাবে যার নাম

Subversion checkout URL সেখানের বক্স এর ইউআরএল থেকে লিঙ্ক টি কপি কর। লিঙ্ক অনেক টা https://github.com/username/username এরকম হবে তা সেখানে পেস্ট করে দাও । তার পর এই লেখা আসবে All set! You can generate and deploy now.

এখন তুমি ওই গিটহাবের জন্য স্ট্যাটিক ওয়েব সাইট জেনারেট করতে হবে তার । তা করার জন্য কিন্তু তুমি নিচের কোড টি এন্টার করবে।

buster generate --domain=http://127.0.0.1:2368

এখন তুমি যদি চাও তোমার জেনারেট করা সাইট টাকে আপলোড করার আগে একবার দেখে নিতে পার যে কেমন হচ্ছে তোমার ওয়েব সাইটটি। তার জন্য নিচের কোড টি ইন্সটল কর।

buster preview

এখন 9000 port এ সার্ভারিং করা হয়েছে তাই না। এখন ব্রাউজার এ http://localhost:9000/ লিখে এন্টার কর। এবং দেখতে পাবে তোমার ওয়েব সাইট। কিন্তু এটা এখনো আপলোড করা হয়নি। যদি কোন সব কিছু ঠিকঠাক থাকে তাহলে আপলোড করার জন্য নিচের কোড এন্টার কর।

sudo buster deploy

তারপর তোমার ইউজার নেম চাইবে তো তুমি তোমার গিটহাব ইউজার নেম দেবে তারপর তোমার পাসওয়ার্ড চাইলে পাসওয়ার্ড দিবে। এর পর কিছুক্ষণ ৫৩০ মিনিট অপেক্ষা করবে তারপরেই লেখা দেখবে

Good job! Deployed to Github Pages. 😀

তো তৈরি হয়ে গেল তোমাদের ফ্রি একটা ঘোস্ট সাইট !!!! 😛

অভিন্দন। এখন তোমার ঘোস্ট সাইটে ভিসিট করতে পার। 🙂

Ghost সাইটের লিঙ্ক পাবে সেটিং এ নিচের দিকে।

কমেন্ট বক্স যোগ করা।

তারপর তোমরা চাইলে একাটা কমেন্ট বক্স অ্যাড করতে পার।

এর জন্য disqus ব্যবহার করতে পার।

https://help.disqus.com/customer/portal/articles/1454924-ghost-installation-instructions

এবং

https://ghostforbeginners.com/how-to-enable-comments-on-a-ghost-blog/

দেখলেই ক্লিয়ার হয়ে যাবে।

আর যদি কাস্টম ডোমেইন (.com, .org, বা .me) ব্যবহার করতে চাও তো নিচের লিঙ্ক ফলো কর।

https://help.github.com/articles/setting-up-a-custom-domain-with-github-pages

তো অনেক তো হল আজকের মত এখানেই কার কোন প্রশ্ন কোন মতামত থাকলে অবশ্যই কমেন্ট করে জানাবে।

আর আমি কিছু ব্যাসিক প্রশ্নের উত্তর দিয়ে দিচ্ছি।

১। গোস্ট এর যেই প্রক্রিয়ায় হোস্ট করলে কত দিন মেয়াদ পাওয়া যাবে ?

উত্তরঃ আজীবন।

২। এটা কি পেইড হোস্টিং এর মত স্পিড দেবে ?

উত্তরঃ হ্যাঁ আবার কোন কোন ক্ষেত্রে পেইড হোস্টিং এর থেকে বেশি দেবে।

৩। আমিতো ওয়ার্ডপ্রেস বা অন্যান্য ব্লগিং প্ল্যাটফর্মে খুব সহজে blog বানাতে পারি তো এতো ঝামেলার কি দরকার।

উত্তরঃ আসলে ব্লগিং এর জন্য অন্যান্য সাইট যেখানে ৩০ মিনিটে সম্পুর্ন কমপ্লিট সাইট তৈরি করে দিতে পারে। সেখানে এই প্রক্রিয়ায় অনেক বেশি সময় লাগে। তাই অনেকের মনে এই প্রশ্নটা উদয় হয়। কিন্তু এখানে একটা বিষয় লক্ষণীয় যে আমরা ড্রাগড্রপ ক্লিক করে ৩০৩৫ মিনিটে একটা ব্লগারে বা ওয়ার্ডপ্রেস এ একটা সাইট কতখানি শিখতে পারি ধরতে গেলে তেমন কিছুই না। আর এটা একটা এডুকেশনাল পোস্ট যার ভালো লাগে নতুন কিছু ট্রাই করতে। সেই এটা করতে পারে। আর আমার মনে হয় কিছু না কিছু নতুন জানবেই। আর গোস্ট ব্লগ কোথাও লাইফ টাইম ফ্রি নাই ওকে তাই ধরতে গেলে এটা খুব একটা খারাপ পদ্ধতি না। মাইক্রো ব্লগিং এর জন্য, স্পীড এর দিক থেকে বিবেচনা করলে। এবপ্নগ কিছু কিছু ক্ষেত্রে গোস্ট ওয়ার্ডপ্রেসের থেকেও ভালো।

৪। আমি তো উবুন্টু চালাই না। সেক্ষেত্রে ভার্চুয়াল করে চালাব যে উবুন্টু সেই সিডিও নাই। তো কোন উপায়?

উত্তরঃ আমি মূলত উবুন্টু ব্যহার করে আরামবোধ করি। তাই এটার উপর ভিত্তি করে প্রক্রিয়াটি তৈরি করেছি। কিন্তু তুমি যদি উবুন্টু ব্যবহার না কর। সমস্যা নাই একই কাজ উইন্ডোজ ব্যবহার করে করতে পার। তুমি নিচের লিঙ্কের নিয়মাবলি অনুসরণ করতে পার।

http://leftofnull.com/2014/02/07/using-github-pages-with-ghost-and-buster-on-windows-part-1/index.html

http://leftofnull.com/2014/02/24/using-github-pages-with-ghost-and-buster-on-windows-part-2/index.html

৫। আমার এই লোকাল হোস্ট আর কম্পিউটার এ গোস্ট ইন্সটল এর ঝামেলা ভাল লাগে না। অন্য কোন উপায় আছে?

উত্তরঃ হ্যাঁ koding.com এর virtual pc মাধ্যমে সম্ভব । একটা ফ্রি অ্যাকাউন্ট এর মাধ্যমে একটা ১ গিগা হার্জ প্রসেসর ১ জিবি র‍্যাম এবং ৩ জিবি হার্ডডিস্ক ওয়ালা উবুন্টু ১৪.০৪ ইন্সটলকৃত পিসি পাবে।

৬। আমার কি গোস্ট সব সময় এটা ওপেন করে রাখতে হবে?

উত্তরঃ না। শুধু যখন কাজ করবে তখন শুধু স্টার্ট করবে পরে অফ করে দিবে। ctrl+c দিলেই অফ হয়ে যায়।

৭। আমি পোস্ট করব কিভাবে ?

উত্তরঃ খুব সহজ একবার বলেছি উপরে। তারপর আবার বলছি প্রথমে গোস্ট স্টার্ট করে রাখ। তার পর http://localhost:2368/ghost/setup/ যাও এবং পোস্ট তৈরি করে পাবলিশ কর। তার পর টার্মিনাল এ অন্য একটি উইন্ডো খুলে বুস্টার দিয়ে জেনারেট কর। তার পর ডিপলয় কর।

৮। আমি যখন আমার গোস্ট এর ওয়েব সাইট এ ড্রপ ডাওন মেনু তে ক্লিক করে হোমে যাই তখন http://localhost:2368/ এ রিডাইরেক্ট হয়ে যায়। কিন্তু এমন কেন হবে ?

উত্তরঃ এটা কোন ব্যাপার না। ঘোস্ট রান করে http://localhost:2368/ghost/setup/ এ যাও তার পর Navigation এ গিয়ে হোম এর লিঙ্ক এর যায়গায় তোমার ওয়েব সাইটের লিঙ্ক বসিয়ে দাও। তার পর বুস্টার দিয়ে জেনারেট কর এবং ডিপলয় কর।

এই গেল প্রশ্ন উত্তর পর্ব এখন তোমার যা করতে হবে কোন সমস্যা হলে কমেন্ট করবে । আর যারা সফল সাইট তৈরি করেছ তারা অবশ্যই সাইটের লিঙ্ক সহ কমেন্ট করবে এবং যদি মনে ভাইয়ের টিউনটি নির্বাচিত হওয়া উচিৎ তো নিচের একটা বুড়ো আঙ্গুলে চাপ দিতে পার।

বিদ্রঃ এই টিউন মূলত ৯১০ শ্রেণীর ছেলেমেয়েদের এবং আমার ছোট ছোট প্রযুক্তি-মনা ভাই বোনদের জন্য আমার ব্লগে লিখেছি। কিন্তু আপনারা যারা আমার সিনিয়র বড় ভাই- ব্রাদার টেকটিউন এ রয়েছেন তারা নিজ গুনে ক্ষমা করে তুমি টাকে আপনি করে নিবেন। এবং অবশ্যই গঠন মূলক কমেন্ট করে ভুল গুলো ধরিয়ে দিবেন।

আমার তৈরি করা গিট সাইটটাকে দেখতে পার।

http://jonybepary.github.io/Jonybepary/

তো আজকের মত এখানেই ভাল থাক সবাই