বিল্ড সার্ভার চালানো
বিল্ড সার্ভার চালানো
অটোমেটেড রিলিজকে শক্তি প্রদানকারী বিল্ড সার্ভারটি পণ্যের সাথে আসে — ইনস্টল বা লাইসেন্স করার জন্য কিছু অতিরিক্ত নেই।
এটি শুরু করা
cd docker
cp build.env.example build.env
docker compose --profile build up -d build-agent build-dind
./build/bootstrap-sandbox-image.sh
বুটস্ট্র্যাপ স্ক্রিপ্টটি স্যান্ডবক্স ইমেজ তৈরি করে এবং এটি বিচ্ছিন্ন বিল্ড ডিমনের মধ্যে লোড করে — কন্টেইনারগুলি শুরু করার পরে একবার চালান, এবং স্যান্ডবক্স ইমেজ পরিবর্তিত হলে আবার চালান।
কী কনফিগার করা
docker/build.env-এ দুটি কী সেট করুন:
RELEASE_RUNNER_KEYRELEASE_RUNNER_CALLBACK_KEY
উভয়ই অ্যাপের নিজস্ব RELEASE_RUNNER_* পরিবেশ ভেরিয়েবলের সাথে সঠিকভাবে মেলাতে হবে। বিল্ড এজেন্ট কেবল এই ফাইলটি লোড করে — এটি কখনও আপনার অ্যাপ্লিকেশনের ডেটাবেস, ক্যাশে, বা লাইসেন্স সাইনিং শংসাপত্রগুলি দেখে না, কেবল এই দুটি কী।
দুটি কনটেইনার, দুটি নেটওয়ার্ক
- build-agent — অ্যাপ থেকে স্বাক্ষরিত বিল্ড অনুরোধ গ্রহণ করে এবং বিচ্ছিন্ন ডকার ডিমন চালায়। এটি অ্যাপের নেটওয়ার্ক এবং বিল্ড নেটওয়ার্ক উভয়েই থাকে।
- build-dind — একটি বিচ্ছিন্ন ডকার-ইন-ডকার ডিমন যেখানে প্রতিটি স্যান্ডবক্স সত্যিই চলে। এটি কখনও অ্যাপ্লিকেশনের নেটওয়ার্কে যোগ দেয় না এবং কোন পোর্ট প্রকাশ করে না।
একটি আলাদা হোস্টে চালানো
বিল্ড সার্ভারটি প্ল্যাটফর্মের বাকি অংশের সাথে একটি মেশিন শেয়ার করতে হবে না। একই docker/ কম্পোজ একটি আলাদা হোস্টে কেবল build প্রোফাইল সক্ষম করে ডেপ্লয় করুন, তারপর অ্যাপের RELEASE_RUNNER_URL সেই হোস্টের দিকে নির্দেশ করুন — কোড পরিবর্তনের প্রয়োজন নেই।

