استفاده و خرید هاست شخصی معمولاً به معنای تنظیمات پیچیده و گیجکننده است که نیاز به مدیریت و تخصص بالایی دارد. اما این روند میتواند آسانتر باشد. در اینجا برنامۀ داکو (Dokku) وارد صحنه میشود.
داکو دقیقاً چیست؟ چطور کار میکند؟ چه ویژگیهایی دارد و چطور کارها را سادهتر میکند؟ در این مقاله این مسائل را با هم بررسی خواهیم کرد.
داکو چیست؟
پلتفرم داکو یک از ابزارهای مهم در حوزۀ کانتینرها و استقرار برنامهها است. این پلتفرم محیطی پایدار و سازگار را تضمین میکند.
Dokku روند کار را ساده و سریعتر میکند و جهان مدرن بهخوبی هماهنگ میشود. این پلتفرم به شما امکان تبدیل ایدهها به پروژه را به کاربر میدهد.
مزایای Dokku
- اجرای روند استقرار به کمک Git
- پیکربندی خودکار
- کاربردیبودن و عملکرد بالا
- بهصرفهبودن
داکو در برابر دیگر نرمافزارهای استقرار
استقلال کامل در حوزۀ تنظیمات
Heroku
سیستم هیروکو روند استقرار پروژهها را آسانتر میکند. اما امکان کنترل کامل بر این فرایند را به کاربر نمیدهد و آنها را محدود میکند.
در مقابل پلتفرم داکو به شما کنترل کامل بر سرور را ارائه میدهد. با استفاده از این پلتفرم میتوانید محیط را کاملاً بر اساس نیازهای خودتان تنظیم کنید.
هماهنگی با تنظیمات موردنظر
Docker
پلتفرم داکر به عنوان یک برنامۀ کانتینرسازی سبک و کاربردی شناخته میشود. اما تنظیم و هماهنگسازی آن میتواند برای کاربرانی که با فرایند کانتینرسازی آشنایی کمی دارند، دشوار باشد.
در عوض Dokku که قدمهای داکر را دنبال میکند، امکانات بیشتری برای تنظیم روند کانتینرسازی و مدیریت آن ارائه میدهد.
بهصرفهبودن
Heroku
برای هر سرویس اضافی که در پلتفرم هیروکو، باید هزینۀ اضافی پرداخت کنید. اما برای استفاده از داکر هزینۀ کمتری پرداخت خواهید کرد بدون اینکه لازم باشد سرعت یا مقیاسپذیری را قربانی کنید.
راهنمای نصب
پیشنیازهای سیستم
- ARMV8 (arm64)
- Ubuntu 20.04/22.04
- Debian 10+ x64
- AMD64 (x86_64)
- حداقل 1 گیگابایت حافظۀ داخلی
نصب آخرین نسخۀ داکو
نصب:
# To set up Dokku on Debian systems, you can utilize the apt-get package manager
for installation
wget -NP . https://dokku.com/install/v0.33.6/bootstrap.sh
sudo DOKKU_TAG=v0.33.6 bash bootstrap.sh
پیکربندی SSH
#Your SSH key is already stored in the current user’s ~/.ssh/authorized_keys file.
You can add it to Dokky by running the following command:
cat ~/.ssh/authorized_keys | dokku ssh-keys:add admin
#You can associate a domain with your Dokku server using the domains:set-global
command. For example, you can set a domain for example.com like:
#dokku domains:set-global example.com
Alternatively, if you prefer to use an IP address, you can set it directly with Dokku:
#dokku domains:set-global 10.0.0.2
#Additionally, you can use sslip.io to gain subdomain support for your server.
Here’s how you can set it up:
#By appending .sslip.io to your IP address, you can access your server with a subdomain. For example:
dokku domains:set-global 10.0.0.2.sslip.io
فرایند استقرار را آغاز کنید.
راهنمای فرایند استقرار در پلتفرم Dokku
پیکربندی
# from your local machine
git clone https://github.com/heroku/ruby-getting-started
داکو را تنظیم کنید.
# on the Dokku host
dokku apps:create ruby-getting-started
برنامۀ خود را تنظیم کنید
قبل از هر کاری از هماهنگی برنامه با سرور Dokku مطمئن شوید. برای این کار ممکن است نیاز باشد پیکربندی را تنظیم کنید.
ایجاد کلید SSH
قبل از هر چیز، لازم است کلیدهای SSH را برای احراز هویت تنظیم کنید. اگر هنوز این کار را نکردهاید، یک کپی از کلید SSH روی سیستم خود ایجاد کرده و سپس آن را به سرور عمومی داکو را اضافه کنید. این کار را با استفاده از آدرس .ssh/authorized_keys انجام دهید.
کد را مشخص کنید.
ابتدا با استفاده از دستور git remote add کد اصلی را به سرور داکو اضافه کنید. سپس با استفاده از دستور git push میتوانید کد خود را توزیع و مستقر کنید.
فرایند استقرار را کنترل کنید.
پس راهاندازی برنامه، میتوانید تنظیمات را از طریق داشبورد مدیریت کنید.
تداوم فرایند
امکان ادغام Dokku و CI/CD و در نتیجه استقرار خودکار تغییرات در مخزن Git وجود دارد.
سخن پایانی
در نهایت لازم به ذکر است که برای استفادۀ بهتر از داکو، باید متغیرهایی را پیکربندی کنید، برنامههای لازم را نصب کرده و دستورالعمل لازم را دنبال کنید. به این شکل میتوانید از عملکرد بالا و امنیت برنامهها مطمئن باشید.