নলেজ বেস

Zinnector® দিয়ে মোতায়েন করুন: লিংক, চেক, পুশ

একটি স্থানীয় প্রজেক্ট থেকে লাইভ সাইটে: একটি API কী দিয়ে সাইন ইন করুন, প্রজেক্টটিকে একটি হোস্টিং স্লটের সাথে লিঙ্ক করুন, প্রি-ফ্লাইট পড়ুন যা স্লটের সাথে আপনার PHP, ডিস্ক এবং WordPress তুলনা করে, এবং পুশ করুন — সাথে রিডিপ্লয়, ডিপ্লয় হিস্ট্রি এবং বিল্ড লগ, যদি কোনো সমস্যা হয়।

একটি প্রজেক্ট স্থানীয়ভাবে চালু হওয়ার পর, Zinn Digital® হোস্টিংয়ে এটিকে লাইভ সাইটে নিয়ে যাওয়ার জন্য চারটি কমান্ড ব্যবহার করা হয়: সাইন ইন করা, প্রজেক্টটিকে একটি হোস্টিং স্লটের সাথে যুক্ত করা, প্রি-ফ্লাইট পড়া এবং পুশ করা। এই নিবন্ধে প্রতিটি কমান্ড, এটি কী প্রিন্ট করে এবং পরবর্তীতে যে কমান্ডগুলো আপনার প্রয়োজন হতে পারে—যেমন রিডিপ্লয়, ডিপ্লয় ইতিহাস এবং বিল্ড লগ—তা আলোচনা করা হয়েছে।

একটি API কী দিয়ে সাইন ইন করুন

ড্যাশবোর্ডের Settings → API keys এ একটি কী তৈরি করুন, তারপর:

zinnector login

প্রম্পটে কী টাইপ করতে হয়—এটি কখনোই কমান্ড লাইনে গৃহীত হয় না, তাই এটি আপনার শেল ইতিহাসে বা প্রসেস লিস্টিংয়ে থাকতে পারে না। CI-তে, পাইপ করুন: echo "$ZINN_API_KEY" | zinnector login --profile ci, অথবা ZINNECTOR_TOKEN সেট করুন এবং সম্পূর্ণভাবে login এড়িয়ে চলুন। সংরক্ষণ করার আগে কী যাচাই করা হয় এবং ফাইল মোড 600 দিয়ে সংরক্ষণ করা হয়। zinnector whoami --scopes দেখায় আপনি কোন সংস্থায় সাইন ইন করেছেন এবং কীটিতে কী কী অনুমতি রয়েছে; একটি স্যান্ডবক্স কী হিসেবে চিহ্নিত থাকে।

স্লটের সাথে প্রজেক্ট লিঙ্ক করুন

zinnector link                                   # তালিকা থেকে একটি সাইট বেছে নিন
zinnector link example.com --repo acme/site --branch main

link সাইটের আইডি zinnector.json-এ লেখে এবং --no-repo পাস না করলে, প্রজেক্টের গিট রিমোটকে প্ল্যাটফর্মের সাইটের সাথে সংযুক্ত করে যাতে একটি পুশ এটিকে ডিপ্লয় করে। zinnector.json কমিট করুন: একজন সহকর্মী যিনি সংগ্রহস্থল ক্লোন করেন তিনি কাউকে না জানিয়েই একই জায়গায় ডিপ্লয় করেন। এতে কোনো গোপনীয় তথ্য থাকে না।

প্রি-ফ্লাইট পড়ুন

zinnector check

এটি সেই কমান্ড যার জন্য CLI বিদ্যমান। এটি আপনার প্রজেক্টের সাথে যে স্লটে এটি ডিপ্লয় করা হতে চলেছে তার তুলনা করে এবং প্রতিটি অমিল প্রিন্ট করে—পাশাপাশি যে তুলনাগুলো করা যায়নি:

  • PHP সংস্করণ, একটি প্রধান-সংস্করণ ব্যবধান সহ যা উচ্চ হিসেবে চিহ্নিত কারণ এটি নির্ভরযোগ্যভাবে একটি সাইট ভেঙে দেয় এবং একটি ছোট ব্যবধান কম হিসেবে চিহ্নিত, কারণ সবকিছুকে অত্যন্ত গুরুত্বপূর্ণ হিসেবে চিহ্নিত করা মানুষকে সতর্কবাণী উপেক্ষা করতে শেখায়।
  • স্লটটি আপনি যে সংস্করণে তৈরি করেছেন তাতে বদল করতে পারে কিনা, স্লটের PHP মেয়াদোত্তীর্ণ হয়েছে কিনা, এবং মেশিনটি সংস্করণটি প্রয়োগ করেছে নাকি কেবল জানানো হয়েছে।
  • স্লটে প্রকৃতপক্ষে বাকি থাকা ডিস্ক এবং ইনোড হেডরুমের বিপরীতে আপনার প্রজেক্টের আকার এবং ফাইলের সংখ্যা—একটি WordPress ট্রি ডিস্ক সীমার নিচে থাকা সত্ত্বেও ফাইল শেষ হয়ে যেতে পারে।
  • উভয় পাশের WordPress সংস্করণসমূহ, স্লটটি প্রভিশনিং শেষ করেছে কিনা, এবং পুশ করার জন্য একটি সংগ্রহস্থল সংযুক্ত আছে কিনা

এটি সতর্ক করে; এটি কখনোই ব্লক করে না। প্রতিটি ফলাফল zinnector push --force দিয়ে ওভাররাইড করা যায়, কারণ আপনি আপনার নিজের সাইট সম্পর্কে এমন জিনিস জানেন যা একজন চেকার জানে না। যে তুলনা করা যায়নি তা অজানা হিসেবে রিপোর্ট করা হয়, কখনো সফল হিসেবে নয়, এবং সারসংক্ষেপে সবসময় উল্লেখ থাকে যে কয়টি ছিল। ডিফল্টভাবে স্থানীয় PHP সংস্করণটি zinnector.json-এ ঘোষিত সংস্করণ; --probe স্থানীয় রানটাইম বুট করে এবং এর পরিবর্তে এটি পরিমাপ করে। --strict অজানা বিষয়ের ক্ষেত্রেও নন-জিরো আউটপুট দেয়, যা একটি CI গেট চায়।

পুশ করুন

zinnector push

push প্রি-ফ্লাইট চালায়, আপনার কমিটগুলো পুশ করে, ডিপ্লয় ট্রিগার করে এবং এটি সম্পন্ন হওয়া পর্যন্ত পর্যবেক্ষণ করে, চূড়ান্ত স্ট্যাটাস এবং ডিপ্লয় করা কমিট প্রিন্ট করে। --dry-run ডিপ্লয় ছাড়া বাকি সব করে; --no-wait এটি ট্রিগার করে এবং প্রস্থান করে; --no-git পুশ না করেই প্ল্যাটফর্মে ইতিমধ্যে যা আছে তা ডিপ্লয় করে। ডিপ্লয় করা কমিটটি যদি এইমাত্র পুশ করা কমিট না হয়, তবে এটি তা জানিয়ে দেয়।

যখন কোনো সমস্যা হয়

zinnector deploys example.com        # ডিপ্লয় ইতিহাস — স্ট্যাটাস, কমিট, ট্রিগার, বার্তা
zinnector logs example.com --build   # সবচেয়ে সাম্প্রতিক ডিপ্লয়ের বিল্ড লগ
zinnector logs example.com --error   # সাইটের ত্রুটির লগ
zinnector deploy example.com         # প্ল্যাটফর্মে ইতিমধ্যে যা আছে তা পুনরায় ডিপ্লয় করুন
zinnector ai "why is my deploy failing?"

zinnector ai আপনার নিজের অ্যাকাউন্টের বিপরীতে প্ল্যাটফর্মে চলে, যাতে এটি একই ডিপ্লয় ইতিহাস এবং লগ দেখতে পায়। একটি প্রজেক্টের ভেতর থেকে এটি প্রজেক্টের গঠন পাঠায়—ডিরেক্টরির নাম, সংস্করণ এবং সাইটের আইডি—এবং কখনো ফাইলের বিষয়বস্তু পাঠায় না।

সম্পর্কিত

এখনও আটকে আছেন?

প্রতিটি প্ল্যানেই সহায়তা অন্তর্ভুক্ত রয়েছে এবং আপনার নিজের ভাষাতেই উত্তর দেওয়া হয়।

সহায়তার জন্য যোগাযোগ করুন সব নিবন্ধ