HELPER VPS

GitLab VPS হোস্টিং, কোড ও CI/CD নিজের সার্ভারে

  • অফিশিয়াল gitlab/gitlab-ce Docker ইমেজ দিয়ে ইনস্টল
  • 16 GB মেমরি বা তার বেশি প্ল্যান সুপারিশ করা হয়।
  • root অ্যাক্সেস ও পাবলিক IPv4·IPv6 অ্যাড্রেস

HELPER VPS GitLab VPS একটি Linux ক্লাউড সার্ভার যেখানে আপনি GitLab Community Edition চালাতে পারেন, যা Git রিপোজিটরি এবং CI/CD এক জায়গায় পরিচালনা করে, মাসিক $25.00 থেকে ইনভয়েসের মাধ্যমে বিল করা হয়। সার্ভার তৈরি করার সময় Docker অ্যাপ ইমেজ বেছে নিন, SSH এর মাধ্যমে সংযোগ করুন এবং অফিশিয়াল gitlab/gitlab-ce ইমেজ চালান, এবং আপনি আপনার টিমের কোড, ইস্যু এবং পাইপলাইন আপনার নিজের সার্ভারে পরিচালনা করতে পারেন।

    GitLab কী?

    GitLab হলো Git রিপোজিটরি ম্যানেজমেন্ট, কোড রিভিউ, ইস্যু ম্যানেজমেন্ট, CI/CD পাইপলাইন ও কন্টেইনার রেজিস্ট্রি একসাথে বাঁধা একটি ডেভেলপমেন্ট প্ল্যাটফর্ম। GitLab Community Edition (CE) ওপেন সোর্স বিনামূল্যের সংস্করণ, যা টিম নিজের সার্ভারে ইনস্টল করে কোড ও ডেভেলপমেন্টের রেকর্ড নিজেই রাখতে পারে। মার্জ রিকোয়েস্ট, উইকি ও মাইলস্টোনের মতো কোলাবোরেশন ফিচার এতে আগে থেকেই আছে।

    অফিশিয়াল gitlab/gitlab-ce Docker ইমেজে GitLab-এর সাথে PostgreSQL, Redis, Nginx, Puma ও Sidekiq সবই আছে, তাই একটি কন্টেইনারেই পুরো সার্ভিস চলে। সেটিং, লগ ও ডেটা ভলিউম দিয়ে সার্ভারের ডিস্কে আলাদা সেভ হয়, তাই কন্টেইনার নতুন ভার্সনে বদলালেও রিপোজিটরি ও ব্যবহারকারীর তথ্য থেকে যায়।

    GitLab VPS দিয়ে কী করা যায়?

    একটি GitLab সেলফ-হোস্টিং সার্ভারে পুরো ডেভেলপমেন্ট ফ্লো এক জায়গায় আনুন।

    GitLab সার্ভার কীভাবে কিনবেন?

    আপনার প্রথম পেমেন্ট থেকে প্রথম লগইন পর্যন্ত তিনটি ধাপ।

    1. ধাপ 1. 16 GB বা তার বেশি প্ল্যান বেছে নিন

      একটি পেমেন্ট মেথড বেছে নিন, আপনার টিমের কাছাকাছি একটি শহর নির্বাচন করুন এবং 16 GB মেমরি বা তার বেশি প্ল্যান বেছে নিন।

    2. ধাপ 2. Docker অ্যাপ ইমেজ দিয়ে তৈরি করুন

      ইমেজ তালিকা থেকে Docker বেছে নিলে Docker Engine ও Docker Compose প্রস্তুত Ubuntu 24.04 সার্ভার তৈরি হয়।

    3. ধাপ 3. SSH দিয়ে সংযোগ করে কমান্ড চালান

      root দিয়ে SSH সংযোগ করে নিচের কমান্ড চালান, আর কয়েক মিনিট পর ব্রাউজারে সার্ভারের অ্যাড্রেস খুলে root অ্যাকাউন্ট দিয়ে লগ ইন করুন।

    GitLab CE কীভাবে ইনস্টল করবেন?

    Docker অ্যাপ ইমেজ দিয়ে বানানো সার্ভারে SSH দিয়ে সংযোগ করে নিচের কমান্ড চালান। gitlab.example.com নিজের ডোমেইন বা সার্ভার IP দিয়ে বদলান, আর সার্ভারের SSH পোর্ট 22 ব্যবহার করে বলে GitLab-এর Git SSH পোর্ট 2222-তে খোলে। প্রথমবার শুরু হতে কয়েক মিনিট লাগে, আর শেষ লাইনের কমান্ড দিয়ে root-এর প্রথম পাসওয়ার্ড দেখতে পারবেন (এই ফাইল 24 ঘণ্টা পরে মুছে যায়)।

    টার্মিনাল
    export GITLAB_HOME=/srv/gitlab
    sudo mkdir -p $GITLAB_HOME
    sudo docker run --detach \
      --hostname gitlab.example.com \
      --publish 443:443 --publish 80:80 --publish 2222:22 \
      --name gitlab \
      --restart always \
      --volume $GITLAB_HOME/config:/etc/gitlab \
      --volume $GITLAB_HOME/logs:/var/log/gitlab \
      --volume $GITLAB_HOME/data:/var/opt/gitlab \
      --shm-size 256m \
      gitlab/gitlab-ce:latest
    sudo docker logs -f gitlab
    sudo docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password

    GitLab নিজে VPS-এ ইনস্টল করার সুবিধা কী?

    GitLab VPS নিজে চালালে কোড ও পাইপলাইন নিজের নিয়মে সামলান।

    GitLab-এর সাথে ব্যবহৃত প্রযুক্তি

    অফিশিয়াল GitLab CE ইমেজ নিচের প্রযুক্তিগুলো ভেতরে রেখে GitLab VPS-এ একসাথে চালায়।

    ব্যবহারকারীর কাছে সার্ভার রাখুন

    31টি দেশের 40টি শহরের যেকোনো জায়গায় একই দামে GitLab সার্ভার তৈরি করুন।

    GitLab VPS-এর জন্য কত GB মেমরি লাগে?

    GitLab একটি ওয়েব সার্ভার, ব্যাকগ্রাউন্ড জব, ডেটাবেস এবং ক্যাশ একসাথে চালায়, তাই এটির জন্য কমপক্ষে 4 GB মেমরি প্রয়োজন, এবং আমরা প্রকৃত টিম ব্যবহারের জন্য 16 GB বা তার বেশি সুপারিশ করি। 12 GB এর সাথে, কয়েকজন একসাথে ব্যবহার করলে ইন্টারফেস ধীর হতে পারে, তাই HELPER VPS এ আমরা 4 vCPU, 16 GB প্ল্যান থেকে শুরু করার পরামর্শ দিই। একটি NVMe ডিস্ক সহ একটি হাই-পারফরম্যান্স প্ল্যান রিপোজিটরি ক্লোন এবং সার্চকে দ্রুত করে।

    একই সার্ভারে GitLab Runner দিয়ে CI জবও চালালে বিল্ডও মেমরি নেয়, তাই 16 GB প্ল্যান উপযুক্ত। বেশি ব্যবহারকারী ও প্রজেক্টের টিম মেমরি প্ল্যান m32-এর মতো বড় মেমরির প্ল্যান বেছে নিন, আর Runner আলাদা সার্ভারে রাখলে GitLab স্ক্রিন সবসময় হালকা চলে। একটি অ্যাকাউন্টে 10টি পর্যন্ত সার্ভার তৈরি করা যায়, তাই এভাবে ভাগ করাও সহজ।

    GitLab সেলফ-হোস্টিং শুরুর পর কী সেট করবেন?

    প্রথম লগ ইনের পর root পাসওয়ার্ড বদলান, আর অ্যাডমিন এরিয়ায় সাইন আপ অনুমোদনভিত্তিক করুন বা বন্ধ রাখুন, তাহলে শুধু টিম সদস্যরাই ঢুকতে পারবেন। ডোমেইন ব্যবহার করলে /srv/gitlab/config/gitlab.rb-এর external_url https অ্যাড্রেসে সেট করে letsencrypt সেটিং চালু করুন, তারপর sudo docker exec -it gitlab gitlab-ctl reconfigure চালালে HTTPS সার্টিফিকেট স্বয়ংক্রিয়ভাবে যুক্ত হয়।

    নোটিফিকেশন ইমেইলের জন্য gitlab.rb-এর SMTP সেটিংয়ে 587 পোর্টের ইমেইল পাঠানোর সার্ভিস দিন। Git SSH অ্যাড্রেসে পোর্ট 2222 দেখাতে gitlab_rails['gitlab_shell_ssh_port'] মান 2222 করুন। নিয়মিত sudo docker exec -t gitlab gitlab-backup create দিয়ে ব্যাকআপ নিন, আর নতুন ভার্সনে যাওয়ার সময় অফিশিয়াল আপগ্রেড পাথ দেখে ইমেজ বদলালে নিরাপদ।

    GitLab হোস্টিং সাধারণ প্রশ্ন

    GitLab VPS বাছাই ও ইনস্টলের সময় প্রায়ই জিজ্ঞাসিত প্রশ্ন।

    GitLab VPS কি এক ক্লিকে ইনস্টল হয়?

    Docker অ্যাপ ইমেজ দিয়ে সার্ভার বানানোর পর অফিশিয়াল gitlab/gitlab-ce ইমেজ একটি docker run কমান্ডে চালান। উপরের কমান্ড পেস্ট করে কয়েক মিনিট অপেক্ষা করলে ব্রাউজারে GitLab-এর লগ ইন স্ক্রিন খোলে।

    GitLab-এর জন্য কমপক্ষে কত GB মেমরি লাগে?

    GitLab এর জন্য কমপক্ষে 4 GB মেমরি প্রয়োজন, এবং আমরা আরামদায়ক টিম ব্যবহারের জন্য 16 GB বা তার বেশি সুপারিশ করি। তাই আমরা 4 vCPU, 16 GB প্ল্যান (g16, n16) থেকে শুরু করার পরামর্শ দিই, এবং আপনি যদি একটি CI Runner ও চালান তবে 32 GB প্ল্যান বেছে নিন।

    Ubuntu ইমেজে Omnibus প্যাকেজ দিয়ে ইনস্টল করা যায় কি?

    হ্যাঁ, Ubuntu দিয়ে বানানো সার্ভারে GitLab-এর অফিশিয়াল প্যাকেজ রিপোজিটরি যোগ করে ইনস্টলের উপায়ও আছে। Docker পদ্ধতিতে সেটিং, লগ ও ডেটা ভলিউমে আলাদা থাকে, তাই আপডেট ও স্থানান্তর সহজ, এজন্য এই পেজে Docker পদ্ধতি দেখানো হয়েছে।

    root-এর প্রথম পাসওয়ার্ড কোথায় দেখবেন?

    sudo docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password কমান্ড দিয়ে দেখুন। এই ফাইল প্রথম সেটআপের 24 ঘণ্টা পরে মুছে যায়, তাই লগ ইন করেই নতুন পাসওয়ার্ড দিন।

    Git SSH কোন পোর্ট ব্যবহার করে?

    সার্ভারের নিজস্ব SSH পোর্ট 22 ব্যবহার করে, তাই উপরের কমান্ড GitLab-এর Git SSH পোর্ট 2222-তে খোলে। gitlab.rb-এ gitlab_shell_ssh_port 2222 সেট করলে রিপোজিটরি স্ক্রিনের SSH অ্যাড্রেসও ঠিকভাবে দেখায়।

    HTTPS সার্টিফিকেট কীভাবে যুক্ত করবেন?

    ডোমেইন সার্ভার IP-তে পয়েন্ট করে gitlab.rb-এর external_url https অ্যাড্রেসে বদলান, letsencrypt চালু করে gitlab-ctl reconfigure চালালে সার্টিফিকেট স্বয়ংক্রিয়ভাবে ইস্যু ও রিনিউ হয়।

    GitLab Runner-ও কি একই সার্ভারে রাখা যায়?

    হ্যাঁ, gitlab/gitlab-runner ইমেজ একই সার্ভারে কন্টেইনারে চালিয়ে রেজিস্টার করুন। বিল্ড মেমরি ও CPU-ও নেয়, তাই 16 GB প্ল্যান বেছে নিন, অথবা Runner একটি ছোট সার্ভারে আলাদা রাখার পরামর্শ দিই।

    GitLab থেকে ইমেইল নোটিফিকেশন পাঠানো যায় কি?

    হ্যাঁ, gitlab.rb-এর SMTP সেটিংয়ে 587 পোর্টের ইমেইল পাঠানোর সার্ভিস দিলে মার্জ রিকোয়েস্ট ও ইস্যুর নোটিফিকেশন যায়। HELPER VPS সার্ভারে বাইরে যাওয়ার পোর্ট 25 বন্ধ থাকে, তাই এই পদ্ধতিতে পাঠান।

    GitLab আপডেট কীভাবে করবেন?

    gitlab-backup দিয়ে ব্যাকআপ নিয়ে নতুন ইমেজ নিন, তারপর একই ভলিউম দিয়ে কন্টেইনার আবার তৈরি করুন। বড় ভার্সন ডিঙিয়ে যেতে হলে GitLab-এর অফিশিয়াল আপগ্রেড পাথ অনুযায়ী মাঝের ভার্সন হয়ে আপগ্রেড করুন।

    রিপোজিটরি বাড়লে ডিস্ক বাড়ানো যায় কি?

    সার্ভার তৈরির সময় 50~1000 GB পর্যন্ত অতিরিক্ত ডিস্ক যোগ করা যায়। GITLAB_HOME অতিরিক্ত ডিস্কের পাথে সেট করলে রিপোজিটরি, রেজিস্ট্রি ও ব্যাকআপ যথেষ্ট জায়গায় থাকে।

    GitLab সার্ভার কেনার পেমেন্ট কীভাবে করবেন?

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

    GitLab হলো GitLab Inc. ও কমিউনিটির তৈরি একটি ওপেন সোর্স প্রজেক্ট, আর GitLab নাম ও লোগোর অধিকার তার মালিকের। GitLab CE ইনস্টল, আপডেট, সেটিং ও ব্যবহারের সাপোর্ট আপনি নিজেই সামলান। GitLab CE অতিরিক্ত খরচ ছাড়াই ব্যবহার হয়, আর সার্ভারের ফি বেছে নেওয়া প্ল্যানের দামের সমান।

    GitLab সার্ভার গাইড

    সার্ভার পাওয়ার পর আগে করে রাখার মতো কাজ।