چرا از شبیه ساز استفاده کنیم؟ و چرا داکر؟
Cosmos DB مایکروسافت یک سرویس پایگاه داده مقیاس پذیر مبتنی بر ابر است که از زمان راه اندازی آن در می 2017 محبوب بوده است. به منظور توسعه راه حل هایی با استفاده از Cosmos DB به عنوان پشتیبان، یک راه ارزان و آسان استفاده از شبیه ساز ارائه شده توسط مایکروسافت است. با این حال، هیچکس نمیخواهد با نصب مواردی مانند این به صورت محلی در ایستگاه کاری توسعهدهندهتان مشکل ایجاد کند. و تصاویر VMware کاملا مجازی شده بخش زیادی از منابع را مصرف می کنند. Docker به کمک می آید، زیرا یک تصویر داکر از هسته ماشینی که روی آن کار می کند استفاده می کند و بنابراین نرم است، ردپای نسبتاً کمی هم در ذخیره سازی و هم در مصرف حافظه دارد و شما را در عرض چند دقیقه راه اندازی می کند.
چه طور باید شروع کرد؟
اول از همه، شما باید کلاینت Docker را روی دستگاه خود نصب کنید. برای ویندوز، Docker Desktop را می توان از اینجا دانلود کرد . پس از نصب، می توانید شبیه ساز Cosmos DB را از رجیستری کانتینر مایکروسافت با استفاده از خط فرمان بردارید:
برای شروع تصویر کانتینر، تنها کاری که باید انجام دهید این است که یک دایرکتوری جدید ایجاد کنید و سپس تصویر نصب شده در این دایرکتوری را اجرا کنید. ممکن است بخواهید ردپای حافظه ای را که اجازه می دهید تطبیق دهید، با این حال به نظر می رسد که 2 گیگابایت برای کار کافی است. مطمئن شوید که پورت هایی که از آنها عبور می کنید با سایر پورت هایی که استفاده می کنید مغایرت نداشته باشد.
docker run --name azure-cosmosdb-emulator --memory 2GB --mount "type=bind,source=%LOCALAPPDATA%CosmosDBEmulatorbind-mount,destination=C:CosmosDB.Emulatorbind-mount" --interactive --tty -p 8081:8081 -p 8900:8900 -p 8901:8901 -p 8902:8902 -p 10250:10250 -p 10251:10251 -p 10252:10252 -p 10253:10253 -p 10254:10254 -p 10255:10255 -p 10256:10256 -p 10350:10350 mcr.microsoft.com/cosmosdb/windows/azure-cosmos-emulator
با اجرای این دستور خروجی ای مانند زیر به دست می آید:
علاوه بر این، یک اسکریپت PowerShell به طور خودکار ایجاد می شود که حاوی کد مورد نیاز برای وارد کردن گواهی SSH برای نمونه کانتینر docker است. آن را در دایرکتوری bind-mount تازه ایجاد شده پیدا خواهید کرد. گواهی را با دوبار کلیک کردن روی فایل importcert.ps1 وارد کنید. همچنین به نقاط پایانی مختلف ارائه شده در پاسخ توجه کنید. سپس می توانید شبیه ساز را با پیمایش به این نقطه پایانی در مرورگر خود راه اندازی کنید. به طور خاص، به/_explorer/index.html. برای نمونه بالا، این خواهد بود
که رابط کاربری Azure Cosmos DB Emulator را نشان می دهد:
از اینجا می توانید برخوردهای خود را با پایگاه داده Cosmos DB شروع کنید. برای شروع سریع، ممکن است نگاهی به این پست وبلاگ داشته باشید که شما را با مجموعه TODO راه اندازی می کند. مایکروسافت ابزارهای بسیار مفیدی را برای شروع کار با یک برنامه C# ارائه می دهد که در آنجا با جزئیات بیشتر توضیح داده شده است.
نتیجه
راه حل شبیه ساز ارائه شده با استفاده از Docker یک راه بسیار مفید برای تمیز نگه داشتن دستگاه شما، صرفه جویی در هزینه ها در مرحله توسعه و آشنایی با Cosmos DB است. اگر قبلاً با شبیه ساز کار کرده اید به من اطلاع دهید و حتماً تجربیات خود را به اشتراک بگذارید.