سینا فاتح

یادداشت مهندسی / 02

داکر و استقرار نرم‌افزار

کانتینرسازی، ساخت و اجرای برنامه را تکرارپذیر می‌کند. در چند پروژه از Docker، پراکسی معکوس، HTTPS و استقرار مبتنی بر ایمیج روی سرور لینوکسی استفاده کرده‌ام.

در این یادداشت 06 پرسش
01

ساخت چندمرحله‌ای Docker چه فایده‌ای دارد؟

مرحلهٔ ساخت ابزارها را نصب و خروجی برنامه را تولید می‌کند. مرحلهٔ اجرا تنها فایل‌های لازم را نگه می‌دارد؛ بنابراین وابستگی‌های ساخت وارد ایمیج نهایی نمی‌شوند.

02

Docker Compose چه چیزهایی را مدیریت می‌کند؟

Compose سرویس‌ها، شبکه‌ها، حجم‌های داده و سیاست راه‌اندازی دوباره را در یک پیکربندی مشخص می‌کند؛ مثلاً برای هماهنگ کردن برنامه، پایگاه داده و پراکسی.

03

Nginx در استقرار چه نقشی دارد؟

Nginx می‌تواند فایل‌های ایستا را ارائه کند یا درخواست‌ها را به برنامه برساند. برای WebSocket باید سربرگ‌های ارتقای اتصال حفظ شوند و درخواست به سرویس درست برسد.

04

HTTPS چگونه تنظیم می‌شود؟

پراکسی عمومی اتصال TLS را خاتمه می‌دهد و درخواست را براساس دامنه هدایت می‌کند. DNS باید به سرور اشاره کند و برنامه URL عمومی HTTPS را در پیوندهای canonical به کار ببرد.

05

روند استقرار مطمئن چیست؟

ایمیج در CI ساخته می‌شود، با نسخهٔ مشخص منتشر می‌شود، همان نسخه استقرار می‌یابد و سلامت سرویس بررسی می‌شود. نگهداری نسخهٔ قبلی مسیر بازگشت را فراهم می‌کند.

06

خطای استقرار را از کجا عیب‌یابی کنیم؟

از DNS و TLS شروع می‌کنم، سپس مسیر پراکسی، سلامت و گزارش کانتینرها، اتصال شبکه و پیکربندی برنامه را بررسی می‌کنم. تفکیک این لایه‌ها علت خطا را روشن‌تر می‌کند.

در عمل

پروژه‌های مرتبط

ادامهٔ مطالعه

یادداشت‌های دیگر

← بازگشت به یادداشت‌ها