
بروزرسانی: 31 خرداد 1404
با Bitbucket Pipelines سایت خود را به طور مداوم در Kinsta مستقر کنید
این روزها، توسعه دهندگان وردپرس به Git تکیه می کنند تا توسعه را روان تر کنند و به چندین نفر اجازه می دهند تا روی یک پروژه کار کنند بدون اینکه روی انگشتان یکدیگر قدم بگذارند.
Bitbucket یک پلتفرم Git محبوب است، اما فقط داشتن کد در آنجا کافی نیست – شما همچنین می خواهید راهی برای اتصال این مخزن به سرور خود داشته باشید. به این ترتیب، به روزرسانی های ارسال شده به Bitbucket می توانند به طور خودکار روی سرور شما مستقر شوند و سایت وردپرس شما را بدون گام های دستی و تکراری به روز نگه می دارند.
اینجاست که Bitbucket Pipelines وارد می شود. Bitbucket Pipelines به شما امکان می دهد یک گردش کار را برای استقرار مداوم تنظیم کنید، بنابراین به روز رسانی های موجود در مخزن شما به طور خودکار در سایت شما مستقر می شوند. اگر از Kinsta به عنوان میزبان خود استفاده می کنید، می توانید از SSH و Bitbucket Pipelines استفاده کنید تا کل فرآیند را بدون هندزفری انجام دهید.
این مقاله نحوه راه اندازی استقرار مداوم برای سایت وردپرس خود را که در Kinsta میزبانی شده است با استفاده از Bitbucket Pipelines توضیح می دهد.
پیش نیازها
قبل از راه اندازی مستمر برای سایت وردپرس خود در Kinsta، مطمئن شوید که موارد زیر را آماده کرده اید:
- سایت وردپرس شما باید قبلاً در Kinsta میزبانی شود.
- دسترسی ماشین محلی به فایل های سایت وردپرس شما.
- یک حساب Bitbucket که در آن کد سایت خود را ذخیره کرده و فشار می دهید.
- آشنایی اولیه با Git، مانند نحوه فشار دادن کد و کار با a
.gitignore
فایل
سایت وردپرس خود را در Bitbucket راه اندازی کنید
به عنوان یک کاربر Kinsta، شما دو راه آسان برای دسترسی به فایل های سایت وردپرس خود دارید. می توانید سایت خود را از سرور Kinsta به DevKinsta بکشید، که به شما امکان می دهد به صورت محلی کار کنید، یا می توانید یک نسخه پشتیبان قابل دانلود مستقیماً از داشبورد MyKinsta خود ایجاد کنید. برای این راهنما، از روش پشتیبان گیری استفاده می کنیم.
فایل های سایت وردپرس خود را دانلود کنید
برای دانلود یک کپی از فایل های وردپرس خود از Kinsta، مراحل زیر را دنبال کنید:
- در داشبورد MyKinsta به سایت خود بروید.
- در نوار کناری سمت چپ، کلیک کنید پشتیبان گیری برای دسترسی به بک آپ های محیطی سایت خود.
- برو به دانلود کنید را برگه و یک نسخه پشتیبان قابل دانلود ایجاد کنید.
- پس از آماده شدن دانلود، آن را در رایانه شخصی خود ذخیره کنید.
این نسخه پشتیبان یک فایل فشرده خواهد بود. برای دسترسی به تمام فایل های وردپرس خود آن را از حالت فشرده خارج کنید.
پروژه خود را برای Git تنظیم کنید و یک مخزن در Bitbucket ایجاد کنید
پوشه حاوی فایل های سایت خود را در ویرایشگر کد دلخواه خود باز کنید. برای جلوگیری از آپلود فایل های اصلی وردپرس، آپلود رسانه ها یا اطلاعات حساس غیرضروری، a .gitignore
فایل را در دایرکتوری ریشه پروژه خود قرار دهید.
می توانید از یک الگوی استاندارد استفاده کنید، محتویات آن را کپی کنید و آن را ذخیره کنید تا مطمئن شوید که فقط فایل های ضروری ردیابی می شوند.
فایل های وردپرس محلی شما اکنون برای Git آماده شده اند. در Bitbucket، به فضای کاری خود بروید و یک مخزن جدید بدون فایل ایجاد کنید. (الف را درج نکنید .gitignore
فایل، همانطور که قبلاً به صورت محلی ایجاد کردیم.)
احراز هویت SSH را تنظیم کنید و به Bitbucket فشار دهید
برای اتصال ایمن به مخزن Bitbucket خود، باید احراز هویت SSH را تنظیم کنید و سپس کد خود را فشار دهید.
- یک جفت کلید SSH در دستگاه محلی خود ایجاد کنید. از آدرس ایمیل خود در دستور زیر استفاده کنید:
ssh-keygen -t ed25519 -C "(email\xa0protected)"
جفت کلید را در مکانی ذخیره کنید که به راحتی می توانید به آن مراجعه کنید (به عنوان مثال،
~/.ssh/id_rsa_bitbucket
). - کلید عمومی را کپی کنید (
~/.ssh/id_rsa_bitbucket.pub
) و به آن اضافه کنید تنظیمات شخصی Bitbucket > کلیدهای SSH. این به دستگاه شما اجازه می دهد تا کد را به طور ایمن فشار دهد.کلید SSH را به Bitbucket اضافه کنید. - با اضافه شدن کلید SSH، از دستورات زیر برای فشار دادن کد خود به Bitbucket استفاده کنید:
# Initialize a new Git repository git init # Stage all files for the first commit git add . # Commit the files with a message git commit -m "Initial commit of WordPress site files" # Add the Bitbucket repository as the remote origin git remote add origin (email\xa0protected):your-username/your-repo.git # Push the files to Bitbucket git push -u origin main
جایگزین کنید
your-username
وyour-repo
با نام کاربری Bitbucket و نام مخزن.
پس از انجام این کار، همه شما در Bitbucket راه اندازی شده اید. سپس می توانید سرور Kinsta خود را برای دریافت به روزرسانی ها از مخزن Bitbucket پیکربندی کنید.
سرور Kinsta خود را برای استقرار خودکار پیکربندی کنید
برای فعال کردن استقرار خودکار از Bitbucket، دسترسی SSH را به Bitbucket ایجاد می کنید و سپس Git را برای استفاده از SSH در سرور Kinsta پیکربندی می کنید.
مرحله 1: دسترسی SSH را به Bitbucket برای اتصالات امن تنظیم کنید
برای اینکه سرور Kinsta بتواند کد را از Bitbucket بکشد، باید یک کلید SSH روی سرور ایجاد کنید و کلید عمومی آن را به حساب Bitbucket خود اضافه کنید.
SSH به سرور Kinsta خود با استفاده از دستور ترمینال SSH موجود در داشبورد MyKinsta شما:

سپس، یک کلید SSH جدید ایجاد کنید (اگر قبلاً یکی را دارید از این مرحله بگذرید):
ssh-keygen -t rsa -b 4096 -C "(email\xa0protected)"
را فشار دهید وارد کنید تا کلید را در مکان پیش فرض ذخیره کنید و وقتی از شما خواسته شد عبارت عبور را خالی بگذارید.

در مرحله بعد، باید کلید عمومی را به Bitbucket اضافه کنید. برای دسترسی به کلید از این دستور استفاده کنید:
cat ~/.ssh/id_rsa.pub
کل خروجی را کپی کنید، سپس به تنظیمات Bitbucket > کلیدهای SSH در حساب Bitbucket خود و کلید عمومی را اضافه کنید. این به سرور Kinsta اجازه می دهد تا به طور ایمن به مخزن Bitbucket شما دسترسی داشته باشد.
مرحله 2: Git را برای استفاده از SSH در سرور Kinsta پیکربندی کنید
با اجرای دستور زیر به دایرکتوری زنده سایت خود در سرور Kinsta بروید:
cd /www/your-site/public
شما می توانید این مسیر را در جزئیات محیطی بخش داشبورد سایت MyKinsta شما، همانطور که در زیر نشان داده شده است:

بعد، دایرکتوری را به عنوان یک مخزن Git مقداردهی اولیه کنید و URL راه دور را برای استفاده از SSH تنظیم کنید:
git init
git remote add origin (email\xa0protected):your-username/your-repo.git
جایگزین کنید your-username
و your-repo
به ترتیب با نام کاربری Bitbucket و نام مخزن.
تأیید کنید که راه اندازی SSH با اجرا کردن کار می کند:
ssh -T (email\xa0protected)
در صورت موفقیت آمیز بودن، باید پیامی مانند: “Authenticated by SSH key. برای اتصال به Bitbucket می توانید از git استفاده کنید. دسترسی پوسته غیرفعال است”
با این تنظیمات، سرور Kinsta شما اکنون آماده دریافت و استقرار به روز رسانی ها از Bitbucket به طور مستقیم از طریق خطوط لوله Bitbucket است.
خطوط لوله Bitbucket را برای استقرار خودکار تنظیم کنید
Bitbucket Pipelines یک ابزار پیوسته یکپارچه سازی و تحویل (CI/CD) است که به شما امکان می دهد تا زمانی که تغییرات را در مخزن خود اعمال می کنید، وظایف را خودکار کنید. در این راه اندازی، ما خط لوله ای را پیکربندی می کنیم که هر زمان که فشار جدیدی به Kinsta وارد شود، راه اندازی به Kinsta را آغاز می کند. main
شاخه
اضافه کردن متغیرهای محیطی مورد نیاز
قبل از پیکربندی خط لوله، باید برخی از متغیرهای محیطی را در Bitbucket تنظیم کنید تا اطلاعات حساس را به صورت ایمن ذخیره کنید. حرکت به تنظیمات مخزن > متغیرهای مخزن در Bitbucket و مقدار زیر را با مقدار مربوطه آن اضافه کنید:
KINSTA_USERNAME
: این نام کاربری SSH شما برای سرور Kinsta است. توسط Bitbucket Pipelines برای ورود به سیستم و اجرای دستورات استقرار استفاده می شود.KINSTA_SERVER_IP
: این آدرس IP سرور Kinsta شما است. این به Bitbucket Pipelines اجازه می دهد تا بداند برای استقرار به کدام سرور متصل شود.PORT
: این پورت SSH است که توسط سرور Kinsta شما استفاده می شود. سرورهای Kinsta از یک پورت سفارشی استفاده می کنند، بنابراین باید آن را در اینجا مشخص کنید. شما می توانید این جزئیات را در سایت خود پیدا کنید اطلاعات صفحه در داشبورد MyKinsta شما.جزئیات STFP/SSH MyKinsta. SSH_PRIVATE_KEY
: این کلید خصوصی SSH کدگذاری شده با base64 از دستگاه محلی شما است. Bitbucket Pipelines از این کلید برای احراز هویت به سرور Kinsta شما استفاده می کند. برای رمزگذاری کلید خصوصی خود در base64، اجرا کنید:cat ~/.ssh/id_rsa | base64
خروجی را کپی کرده و به عنوان مقدار آن اضافه کنید
SSH_PRIVATE_KEY
.
پیکربندی Bitbucket Pipeline
حالا بیایید فایل پیکربندی را بنویسیم، bitbucket-pipelines.yml
، برای استقرار خودکار. این فایل خط لوله را تعریف می کند و مشخص می کند که چه زمانی باید اجرا شود، چه دستوراتی باید اجرا شود و چگونه به سرور Kinsta خود متصل شوید. شما می توانید این کار را به صورت محلی در IDE خود انجام دهید.
این پیکربندی کامل است:
pipelines:
branches:
main:
- step:
name: Deploy to Kinsta
script:
- pipe: atlassian/ssh-run:0.8.1
variables:
SSH_USER: $KINSTA_USERNAME
SERVER: $KINSTA_SERVER_IP
PORT: $PORT
COMMAND: |
cd /www/your-site/public &&
git fetch origin main &&
git reset --hard origin/main
SSH_KEY: $SSH_PRIVATE_KEY
DEBUG: \'true\'
نگاهی دقیق تر به این پیکربندی خط لوله
این خط لوله برای خودکارسازی استقرار در سرور Kinsta شما هر زمان که فشار جدیدی به main
شاخه در اینجا خلاصه ای از آنچه هر قسمت انجام می دهد آورده شده است:
- ماشه خط لوله:
pipelines
بخش به گونه ای پیکربندی شده است که باعث ایجاد فشار به قسمت شودmain
شاخه این به معنای هرگونه تعهد جدید بهmain
به طور خودکار استقرار را شروع می کند. - مرحله: برای شفافیت، مرحله "Deploy to Kinsta" نامگذاری شده است. این مرحله شامل اقدامات اصلی استقرار است.
- لوله SSH اجرا می شود: ما از
atlassian/ssh-run
لوله، که به Bitbucket اجازه می دهد تا از طریق SSH به سرور Kinsta شما متصل شود و دستورات را از راه دور اجرا کند. این لوله فرآیند تنظیم یک جلسه SSH، اجرای دستورات و بستن جلسه را ساده می کند، بنابراین نیازی به مدیریت جزئیات SSH به صورت دستی در اسکریپت نیست. - دستورات استقرار:
COMMAND
بلوک حاوی دستوراتی است که آخرین کد را در سایت وردپرس شما مستقر می کند. در اینجا چیزی است که هر دستور انجام می دهد:- اولین دستور به دایرکتوری زنده ای که وردپرس در آن میزبانی می شود هدایت می شود.
- سپس دستور دوم اجرا می شود
git fetch origin main
برای کشیدن آخرین کد از شعبه اصلی در Bitbucket. - آخرین دستور سپس سایت زنده را با آخرین کد از شعبه اصلی به روز می کند.
این پیکربندی همه جنبه های استقرار را کنترل می کند - از اتصال به Kinsta تا به روزرسانی فایل های سایت شما - بنابراین سایت وردپرس شما در Kinsta با هر بار فشار دادن به طور خودکار به روز می شود. main
.
خط لوله را آزمایش کنید
ذخیره کنید bitbucket-pipelines.yml
را در دایرکتوری ریشه مخزن خود قرار دهید و تغییرات را انجام دهید. وقتی این را به سمت main
انشعاب، خط لوله به طور خودکار راه اندازی می شود و فرآیند استقرار را آغاز می کند.
می توانید پیشرفت استقرار را در داشبورد Bitbucket Pipelines نظارت کنید. اگر همه چیز به درستی تنظیم شده باشد، Bitbucket به سرور Kinsta شما متصل می شود، آخرین کد را دریافت می کند و آن را در سایت زنده شما مستقر می کند.

برای عیب یابی، لاگ های خط لوله را در Bitbucket بررسی کنید، به خصوص اگر DEBUG
تنظیم شده است "true"
. گزارش ها اطلاعات دقیقی در مورد هر مرحله ارائه می دهند که می تواند به شناسایی هرگونه مشکل اتصال یا پیکربندی کمک کند.
خلاصه
راه اندازی استقرار خودکار از Bitbucket به Kinsta یک راه قدرتمند برای به روز نگه داشتن سایت وردپرس شما بدون دردسر به روز رسانی دستی است. پس از اتصال Bitbucket Pipelines و سرور Kinsta شما، هر فشاری که به مخزن شما وارد می شود بلافاصله در سایت زنده شما منعکس می شود و زمان خرابی را به حداقل می رساند و خطاهای استقرار را کاهش می دهد.
به یاد داشته باشید که DevKinsta گزینه ساده تری را برای توسعه دهندگان انفرادی ارائه می دهد. DevKinsta به شما این امکان را می دهد که با یک کلیک، محیط توسعه محلی خود را مستقیماً به Kinsta فشار دهید، و از نیاز به تنظیم خط لوله اجتناب کنید. مزیت اضافه شده این رویکرد این است که تغییرات پایگاه داده شما نیز می تواند گنجانده شود و کد و محتوای شما بدون دردسر همگام شوند.
نظر شما در مورد این فرآیند چیست؟ سوالی دارید یا با مشکلی مواجه می شوید؟ نظرات خود را به اشتراک بگذارید یا در نظرات زیر بپرسید!