توسعه و اجرای یک پروژه جاوایی با Spring Boot و داکر (Docker)

توسعه و اجرای یک پروژه جاوایی با Spring Boot و داکر (Docker) از آنجایی که استفاده از فنآوری داکر هر روز در حال گسترش است و به نظر میرسد به زودی تبدیل به بستر استاندارد اجرای نرم افزارهای سمت سرور خواهد شد، در این مقاله سعی داریم روش اجرای یک برنامه جاوایی مبتنی بر Spirng Boot را همراه با جزییات کافی و به صورت مرحله به مرحله به کمک داکر شرح دهیم.

Continue reading ↦

پرسش و پاسخهای متداول درباره داکر

پرسش و پاسخهای متداول درباره داکر داکر چه کاربردهایی دارد؟ داکر نصب و پیکربندی (configuration) نرم افزارهای مختلف را راحت و سریع میکند به حدی که نصب و اجرای یک نرم افزار بسیار پیچیدهٔ سمت سرور تنها چند دقیقه بیشتر طول نمیکشد. همچنین معماری داکر به گونه ایست که میتوان با آن به سادگی نسخه های کاملا متفاوت از یک نرم افزار را همزمان بر روی یک سیستم عامل اجرا کرد بدون اینکه این نسخه ها با یکدیگر تداخلی داشته باشند.

Continue reading ↦

ساده ترین راه برای دانلود تصاویر رسمی داکر چیست؟

ساده ترین راه برای دانلود تصاویر رسمی داکر چیست؟ اگر با مفاهیم پایه ای داکر آشنا هستید و قصد دارید برای پروژه بعدی خود از آن استفاده کنید، ممکن است برای دانلود تصاویر رسمی داکر (official docker images) به مشکلاتی برخورده باشید. ساده ترین و سریعترین راه در حال حاضر برای انجام این کار استفاده از سرویس الستیکو هاب است. به عنوان مثال برای اجرای یک سرور tomcat میتوانید دستور زیر را اجرا کنید: docker run -ti hub.elastico.io/library/tomcat یا برای اجرای یک پایگاه داده های mysql از طریق کانتینر رسمی آن میتوانید دستور زیر را بکار ببرید: docker run -d --name=test-mysql -e MYSQL_ROOT_PASSWORD=passw123 hub.elastico.io/library/mysql و سپس با استفاده از دستور زیر خروجی آن را بررسی کنید: docker logs test-mysql و در نهایت با کمک دستور زیر به آن متصل شوید: docker run -it --rm --link test-mysql:mysql hub.elastico.io/library/mysql sh -c 'exec mysql -h"$MYSQL_PORT_3306_TCP_ADDR" -P"$MYSQL_PORT_3306_TCP_PORT" -uroot -p"$MYSQL_ENV_MYSQL_ROOT_PASSWORD"' سرویس الستیکو هاب به زودی امکان جستجوی این تصاویر را هم فراهم میکند ولی در حال حاضر میتوانید آنها را از طریق جستجو در داکر هاب (hub.docker.com) پیدا کرده و سپس با قرار دادن hub.elastico.io/library در ابتدای نام تصاویر آنها را به راحتی دریافت و اجرا کنید.

Continue reading ↦

چطور به یک برنامه که تحت Kubernetes اجرا شده است وصل شویم؟

چطور به یک برنامه که تحت Kubernetes اجرا شده است وصل شویم؟ در این مطلب قصد داریم بررسی کنیم که چطور میتوانیم با استفاده از Kubernetes به دنیای بیرون سرویس ارایه کنیم. اگر با مفاهیم اولیه Kubernetes آشنایی ندارید توصیه میکنیم ابتدا به مقاله کوبرنتیس چیست نگاهی بیندازید. اگر با یکی از روشهای گفته شده در این مقاله یک کلاستر کوبرنتیس راه اندازی کنید و چند سرویس هم بر روی آن اجرا کنید به زودی متوجه میشوید که روش های معمول ارایه سرویسهای وبی و توزیع بار (Load Balancing) مثلا با استفاده از Nginx برای اتصال به این سرویسها مشابه معمول کار نمیکند.

Continue reading ↦

آشنایی با داکر کامپوز (Docker Compose) - بخش اول

آشنایی با داکر کامپوز (Docker Compose) - بخش اول ابزار Docker Compose (با نام قبلی Fig) ابزاری متن باز برای خودکارسازی کار با کانتینرهاست که ابتدا توسط تیم Orchard ایجاد و سپس در سال ۲۰۱۴ توسط شرکت داکر خریداری شد. برای درک بهتر این ابزار لازم است قدری با مفاهیم اولیه داکر آشنایی داشته باشید که میتوانید در همین سایت درباره آن بیشتر مطالعه کنید. داکر کامپوز برای تعریف و اجرای برنامه هایی که از چند کانتینر تشکیل شده اند بکار میرود.

Continue reading ↦

نصب داکر بر روی اوبونتو Ubuntu 16.04 LTS

نصب داکر بر روی اوبونتو (Ubuntu 16.04 LTS) در این مطلب به چگونگی نصب داکر بر روی سیستم عامل اوبونتو می پردازیم. برای انجام دستورات زیر نیاز دارید که دسترسی root داشته باشید. از آنجا که بسته (package) موجود در مخزن اوبونتو 16.04 برای نصب داکر ممکن است آخرین نسخه نباشد، پیشنهاد می شود آخرین نسخه را از مخزن رسمی داکر دریافت کنید. برای این کار ابتدا اطلاعات تمام بسته ها را بروز رسانی کنید: sudo apt-get update حال برای نصب داکر، کلید GPG مخصوص مخزن رسمی داکر را به سیستم خود اضافه کنید: sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D سپس مخزن داکر را به منابع APT اضافه کنید تا بتوانید با کمک دستور apt-get‍ بسته های این مخزن را نصب کنید: sudo apt-add-repository 'deb https://apt.dockerproject.org/repo ubuntu-xenial main' در قدم بعدی، دوباره اطلاعات بسته ها را که این بار شامل مخزن جدید داکر میشود بروز رسانی کنید: sudo apt-get update قبل از نصب مطمئن شوید که موتور داکر را از مخزن پروژه داکر دانلود می کنید، نه از مخزن پیش فرض اوبونتو.

Continue reading ↦

کوبرنتیس چیست (Kubernetes) و چرا به آن نیاز دارید؟

کوبرنتیس چیست (Kubernetes) و چرا به آن نیاز دارید؟ کوبرنتیس پیاده سازی جدیدی از بیش از یک دهه تجربه گوگل در اجرای نرم افزارهای سمت سرور در مقیاس بسیار بالاست که به صورت متن باز (open source) در اختیار همه قرار گرفته است. این نرم افزار وظیفه اجرا و مدیریت کانتینرها را بر روی گروهی از سرورهای موجود در یک یا چند مرکز داده ها (data center) به عهده دارد. برای درک بهتر این سیستم لازم است قدری با مفاهیم اولیه کانتینرها مانند داکر آشنایی داشته باشید که میتوانید در همین سایت درباره آن مطالعه کنید.

Continue reading ↦

چرا بجای sudo بهتر است از gosu استفاده کنید؟

چرا بجای sudo بهتر است از gosu استفاده کنید؟ جهت اجرای دستورات گفته شده در این مقاله نیاز دارید قبلا داکر را نصب کرده باشید. روش نصب داکر روی ویندوز یا لینوکس CentOS را میتوانید در همین سایت مطالعه کنید. همچنین برای یادگیری بهتر این مطلب ممکن است آشنایی با مفاهیم پایه ای داکر به شما کمک کند. ابزار سنتی لینوکس برای اجرای دستورات تحت یک کاربر خاص sudo نام دارد و به احتمال زیاد شما تابحال به دفعات از آن استفاده کرده اید.

Continue reading ↦

الگوهای طراحی در سیستمهای توزیع شده مبتنی بر کانتینر

الگوهای طراحی در سیستمهای توزیع شده مبتنی بر کانتینر این نوشتار ترجمه ای از مقاله ای با همین عنوان است از مهندسین شرکت گوگل که توسط آقای بابک قدیری ترجمه شده است. مقدمه در اواخر دهه ۸۰ و اوایل دهه ۹۰، برنامه‌نویسی شی‌گرا، توسعه نرم افزار را به کلی متحول کرد و باعث فراگیر شدن رویکرد ساخت برنامه ها به شکل مجموعه ای از مولفه های مستقل از هم شد. امروزه با گسترش محبوبیت و فراگیر شدن معماری ریزسرویسهایی که توسط محفظه‌هایی از قطعات نرم‌افزاری ساخته شده‌اند، شاهد انقلابی مشابه در توسعه سیستمهای توزیع‌شده هستیم.

Continue reading ↦

مفاهیم پایه ای داکر

مفاهیم پایه ای داکر مجموعه ابزارهای داکر به طور کلی توسعه و انتشار نرم افزارها را ساده میکند و این کار را از طریق فراهم کردن یک راه حل مناسب برای ساخت و به اشتراک گذاشتن تصویری قابل اجرا از یک برنامه کاربردی انجام میدهد. یک تصویر داکر همچنین بخشهای زیادی از سیستم عامل بجز هسته آن را شامل میشود. پیش از مطالعه این مطلب اگر در ضرورت استفاده از داکر تردید دارید میتوانید مقاله چرا به داکر نیاز دارید را مطالعه کنید.

Continue reading ↦