〰💎 آپلود فایل توی باکت S3 در node.js 💎〰
امروز میخوام در مورد یکی از موضوعات پرکاربرد و جذاب در دنیای Node.js صحبت کنم: آپلود فایل با استفاده از باکت S3! 🎉
📦 چی هست این S3 و چرا باید ازش استفاده کنیم؟
باید بدونید S3 (Simple Storage Service) یکی از سرویسهای معروف و محبوب آمازون وب سرویس (AWS) هست که به شما اجازه میده فایلهاتون رو روی فضای ابری ذخیره کنید. 🤓 این سرویس به خاطر قابلیتهای زیادی مثل مقیاسپذیری بالا، امنیت و سرعت زیادش خیلی طرفدار داره.
فرض کن یه پروژه داری که توش کلی فایل (مثل عکس، ویدیو یا حتی فایلهای بزرگ) باید ذخیره بشه. به جای اینکه این فایلها رو روی سرور خودت نگه داری و مدام نگران فضای ذخیرهسازی باشی، میتونی از S3 استفاده کنی تا همه چیز روی فضای ابری مدیریت بشه. 🚀
🎯 حالا چطور میتونیم با Node.js فایل آپلود کنیم؟
بریم سراغ اصل مطلب! 😊 برای آپلود فایل در S3 با Node.js چند تا مرحله باید انجام بدیم:
📥 نصب پکیجهای مورد نیاز:
اول از همه باید پکیجهای aws-sdk و multer رو نصب کنیم. aws-sdk کتابخانهای هست که AWS رو به Node.js متصل میکنه و multer هم برای مدیریت فایلهای آپلودی استفاده میشه.
⚙ کانفیگ AWS:
حالا باید کلاینت AWS رو کانفیگ کنیم. برای این کار نیاز به accessKeyId و secretAccessKey دارید که باید از کنسول AWS بگیرید.
🔧 ساختن تابع آپلود:
حالا بیایم یه تابع ساده برای آپلود فایل بسازیم. این تابع فایل رو از کلاینت میگیره و به S3 آپلود میکنه:
🧾 مدیریت فایلهای آپلودی:
از multer برای گرفتن فایلها از فرم استفاده میکنیم. به این شکل که فایلها به عنوان buffer به تابع uploadFile پاس داده میشن:
توی این کد، وقتی کاربر فایلی رو آپلود میکنه، ما از طریق multer اون فایل رو میگیریم و با استفاده از aws-sdk اونو به S3 ارسال میکنیم.
💡 نکات اضافی و پیشنهادها
🛡 ایمنسازی: حواستون باشه که accessKeyId و secretAccessKey رو توی کد قرار ندید. به جای اونها از متغیرهای محیطی (environment variables) استفاده کنید.
📟 استفاده از presigned URLs: اگه میخواید کاربر مستقیماً از کلاینت خودش فایل رو آپلود کنه، میتونید از presigned URLs استفاده کنید که امنیت و عملکرد بهتری داره.
🔬 مانیتورینگ و مدیریت فایلها: با استفاده از امکاناتی مثل CloudWatch یا S3 Events میتونید عملیاتهای مختلف روی فایلها رو مانیتور کنید.
امیدوارم این آموزش به دردتون بخوره و بتونید به راحتی فایلهاتون رو با Node.js توی S3 آپلود کنید.
امید وارم براتون مفید بوده باشه :) ❤️
#node.js #s3 #aws #clound_storage
@ninja_learn_ir
امروز میخوام در مورد یکی از موضوعات پرکاربرد و جذاب در دنیای Node.js صحبت کنم: آپلود فایل با استفاده از باکت S3! 🎉
📦 چی هست این S3 و چرا باید ازش استفاده کنیم؟
باید بدونید S3 (Simple Storage Service) یکی از سرویسهای معروف و محبوب آمازون وب سرویس (AWS) هست که به شما اجازه میده فایلهاتون رو روی فضای ابری ذخیره کنید. 🤓 این سرویس به خاطر قابلیتهای زیادی مثل مقیاسپذیری بالا، امنیت و سرعت زیادش خیلی طرفدار داره.
فرض کن یه پروژه داری که توش کلی فایل (مثل عکس، ویدیو یا حتی فایلهای بزرگ) باید ذخیره بشه. به جای اینکه این فایلها رو روی سرور خودت نگه داری و مدام نگران فضای ذخیرهسازی باشی، میتونی از S3 استفاده کنی تا همه چیز روی فضای ابری مدیریت بشه. 🚀
🎯 حالا چطور میتونیم با Node.js فایل آپلود کنیم؟
بریم سراغ اصل مطلب! 😊 برای آپلود فایل در S3 با Node.js چند تا مرحله باید انجام بدیم:
📥 نصب پکیجهای مورد نیاز:
اول از همه باید پکیجهای aws-sdk و multer رو نصب کنیم. aws-sdk کتابخانهای هست که AWS رو به Node.js متصل میکنه و multer هم برای مدیریت فایلهای آپلودی استفاده میشه.
npm install aws-sdk multer
⚙ کانفیگ AWS:
حالا باید کلاینت AWS رو کانفیگ کنیم. برای این کار نیاز به accessKeyId و secretAccessKey دارید که باید از کنسول AWS بگیرید.
const AWS = require('aws-sdk');
AWS.config.update({
accessKeyId: 'YOUR_ACCESS_KEY_ID',
secretAccessKey: 'YOUR_SECRET_ACCESS_KEY',
region: 'YOUR_REGION'
});
const s3 = new AWS.S3();
🔧 ساختن تابع آپلود:
حالا بیایم یه تابع ساده برای آپلود فایل بسازیم. این تابع فایل رو از کلاینت میگیره و به S3 آپلود میکنه:
const uploadFile = (file) => {
const params = {
Bucket: 'YOUR_BUCKET_NAME',
Key: file.originalname,
Body: file.buffer
};
return s3.upload(params).promise();
};
🧾 مدیریت فایلهای آپلودی:
از multer برای گرفتن فایلها از فرم استفاده میکنیم. به این شکل که فایلها به عنوان buffer به تابع uploadFile پاس داده میشن:
const multer = require('multer');
const upload = multer();
app.post('/upload', upload.single('file'), async (req, res) => {
try {
const result = await uploadFile(req.file);
res.send(result);
} catch (error) {
res.status(500).send(error);
}
});
توی این کد، وقتی کاربر فایلی رو آپلود میکنه، ما از طریق multer اون فایل رو میگیریم و با استفاده از aws-sdk اونو به S3 ارسال میکنیم.
💡 نکات اضافی و پیشنهادها
🛡 ایمنسازی: حواستون باشه که accessKeyId و secretAccessKey رو توی کد قرار ندید. به جای اونها از متغیرهای محیطی (environment variables) استفاده کنید.
📟 استفاده از presigned URLs: اگه میخواید کاربر مستقیماً از کلاینت خودش فایل رو آپلود کنه، میتونید از presigned URLs استفاده کنید که امنیت و عملکرد بهتری داره.
🔬 مانیتورینگ و مدیریت فایلها: با استفاده از امکاناتی مثل CloudWatch یا S3 Events میتونید عملیاتهای مختلف روی فایلها رو مانیتور کنید.
امیدوارم این آموزش به دردتون بخوره و بتونید به راحتی فایلهاتون رو با Node.js توی S3 آپلود کنید.
#node.js #s3 #aws #clound_storage
❤6🥰1
https://t.iss.one/+td1EcO_YfSphNTlk
دوستان این لینک گروهه میتونید توش جوین شید و چت بکنید و سوالاتونو بپرسید یا ... هرکار دیگه ای
دوستان این لینک گروهه میتونید توش جوین شید و چت بکنید و سوالاتونو بپرسید یا ... هرکار دیگه ای
Telegram
Programmers City 🌆
گروه نینجا لرن🥷
🌐 channel link : https://t.iss.one/ninja_learn_ir
👥 Group link: https://t.iss.one/+td1EcO_YfSphNTlk
⚠️ Rules: https://t.iss.one/programmers_city_rules
🌐 channel link : https://t.iss.one/ninja_learn_ir
👥 Group link: https://t.iss.one/+td1EcO_YfSphNTlk
⚠️ Rules: https://t.iss.one/programmers_city_rules
👍2❤1😁1
💎 کلید مخفی (SECRET KEY) در جنگو به زبان ساده 💎
تو دنیای جنگو، یه کلید مخفی داریم که مثل یه قفل عمل میکنه. این کلید برای امضاهای امنیتی استفاده میشه و باید کاملا محرمانه باشه و هیچوقت نباید کسی جز خودتون اونو بدونه.
وقتی یه پروژه جدید با django-admin startproject میسازید، جنگو بصورت خودکار یه کلید مخفی تولید میکنه و تو تنظیمات پروژه قرارش میده.
این کلید یه رشتهی بیمعنیه و نباید باهاش مثل یه متن یا دادهی دیگه رفتار کنید. هر وقت میخواین ازش استفاده کنید، باید با دستور force_str() یا force_bytes() اونو به فرمت مورد نظرتون تبدیل کنید.
⭕️ اگه این کلید رو تنظیم نکنید، جنگو اصلا بالا نمیاد!
⚠️ مهم: این کلید رو به هیچ وجه در اختیار کسی قرار ندید!
اگه کلید مخفی لو بره، امنیت کل برنامهتون به خطر میفته و ممکنه هکرها بتونن به بخشهای خاصی از برنامه دسترسی پیدا کنن یا حتی بتونن کدهای مخرب اجرا کنن.
❓این کلید برای چی استفاده میشه؟
1⃣ تمام جلسات (Session) به غیر از اونایی که از کش (Cache) استفاده میکنن.
2⃣ تمام پیامها (Message) که از روشهای ذخیرهسازی مثل CookieStorage یا FallbackStorage استفاده میکنن.
3⃣ توکنهای بازیابی رمز عبور (Password Reset)
4⃣ هر جایی که امضای امنیتی نیاز باشه (مگر اینکه کلید دیگهای تنظیم شده باشه)
اگه کلید مخفی رو عوض کنید، تمام موارد بالا دیگه کار نمیکنن. برای همین، موقع عوض کردن کلید، کلید قبلی رو به طور موقت تو تنظیمات SECRET_KEY_FALLBACKS قرار بدید تا مشکلی پیش نیاد.
⭕️ این نکته رو هم یادتون باشه که کلید مخفی برای رمز عبور کاربرها استفاده نمیشه و عوض کردن اون تاثیری روی رمزها نداره.
فایل پیشفرض settings.py که با django-admin startproject ساخته میشه، به طور خودکار یه کلید مخفی منحصر به فرد برای راحتی کارتون ایجاد میکنه.
امیدوارم براتون مفید واقع بوده باشه 🌹
#جنگو
تو دنیای جنگو، یه کلید مخفی داریم که مثل یه قفل عمل میکنه. این کلید برای امضاهای امنیتی استفاده میشه و باید کاملا محرمانه باشه و هیچوقت نباید کسی جز خودتون اونو بدونه.
وقتی یه پروژه جدید با django-admin startproject میسازید، جنگو بصورت خودکار یه کلید مخفی تولید میکنه و تو تنظیمات پروژه قرارش میده.
این کلید یه رشتهی بیمعنیه و نباید باهاش مثل یه متن یا دادهی دیگه رفتار کنید. هر وقت میخواین ازش استفاده کنید، باید با دستور force_str() یا force_bytes() اونو به فرمت مورد نظرتون تبدیل کنید.
⭕️ اگه این کلید رو تنظیم نکنید، جنگو اصلا بالا نمیاد!
⚠️ مهم: این کلید رو به هیچ وجه در اختیار کسی قرار ندید!
اگه کلید مخفی لو بره، امنیت کل برنامهتون به خطر میفته و ممکنه هکرها بتونن به بخشهای خاصی از برنامه دسترسی پیدا کنن یا حتی بتونن کدهای مخرب اجرا کنن.
❓این کلید برای چی استفاده میشه؟
1⃣ تمام جلسات (Session) به غیر از اونایی که از کش (Cache) استفاده میکنن.
2⃣ تمام پیامها (Message) که از روشهای ذخیرهسازی مثل CookieStorage یا FallbackStorage استفاده میکنن.
3⃣ توکنهای بازیابی رمز عبور (Password Reset)
4⃣ هر جایی که امضای امنیتی نیاز باشه (مگر اینکه کلید دیگهای تنظیم شده باشه)
اگه کلید مخفی رو عوض کنید، تمام موارد بالا دیگه کار نمیکنن. برای همین، موقع عوض کردن کلید، کلید قبلی رو به طور موقت تو تنظیمات SECRET_KEY_FALLBACKS قرار بدید تا مشکلی پیش نیاد.
⭕️ این نکته رو هم یادتون باشه که کلید مخفی برای رمز عبور کاربرها استفاده نمیشه و عوض کردن اون تاثیری روی رمزها نداره.
فایل پیشفرض settings.py که با django-admin startproject ساخته میشه، به طور خودکار یه کلید مخفی منحصر به فرد برای راحتی کارتون ایجاد میکنه.
امیدوارم براتون مفید واقع بوده باشه 🌹
#جنگو
❤5🔥3👍2
دوره DRF بالاخره منتشر شد 🥳
توی این دوره از مباحث شروع میکنیم و قدم به قدم وارد دنیای APIهای پیشرفته میشیم، مفاهیمی مثل Serialization، Authentication، Viewsets و بسیاری دیگه رو بهصورت کاربردی یاد میگیری. هر جلسه با دقت و وسواس طراحی شده تا مطمئن بشیم که نه تنها مفاهیم رو میفهمی، بلکه آمادهای اونها رو توی پروژههای واقعیات پیادهسازی کنی. 💻🔗
https://youtube.com/playlist?list=PLq3tK5gKk3-11_jwdZ_yB8iqdS1q0OfXS&si=RnNUGYgOtN9U018R
@ninja_learn_ir
توی این دوره از مباحث شروع میکنیم و قدم به قدم وارد دنیای APIهای پیشرفته میشیم، مفاهیمی مثل Serialization، Authentication، Viewsets و بسیاری دیگه رو بهصورت کاربردی یاد میگیری. هر جلسه با دقت و وسواس طراحی شده تا مطمئن بشیم که نه تنها مفاهیم رو میفهمی، بلکه آمادهای اونها رو توی پروژههای واقعیات پیادهسازی کنی. 💻🔗
https://youtube.com/playlist?list=PLq3tK5gKk3-11_jwdZ_yB8iqdS1q0OfXS&si=RnNUGYgOtN9U018R
YouTube
دوره اموزش مقدماتی DRF 🚀
این پلیلیست کاملترین راهنمای Django Rest Framework (DRF) هست که هر توسعهدهنده وب باید اون رو داشته باشه. 🚀 از مبانی شروع میکنیم و قدم به قدم وارد دنیای A...
🎉12❤1👎1🔥1😡1
〰💎 آپلود فایل در S3 با استفاده از جنگو 💎〰
امروز قراره درباره یکی از موضوعات پرکاربرد و جذاب توی دنیای جنگو صحبت کنیم: آپلود فایل با استفاده از باکت S3! 🎉
📦 باکت S3 چیه و چرا باید ازش استفاده کنیم؟
باکت S3 یا همون Simple Storage Service یکی از سرویسهای محبوب آمازون وب سرویس (AWS) هست که بهت این امکان رو میده فایلهات رو توی فضای ابری ذخیره کنی. این سرویس به خاطر ویژگیهایی مثل مقیاسپذیری بالا امنیت قوی و سرعت زیاد خیلی طرفدار داره.
یه مثال بزنم
فرض کن یه پروژه جنگویی داری که توش کلی فایل مثل عکس، ویدیو یا حتی فایلهای حجیم باید ذخیره بشن. به جای اینکه این فایلها رو روی سرور خودت نگه داری و نگران فضای ذخیرهسازی باشی، میتونی از S3 استفاده کنی تا همه چیز توی فضای ابری مدیریت بشه. 🚀
🎯 حالا چطور میتونیم توی جنگو فایل هارو روی باکت S3 آپلود کنیم؟
برای آپلود فایلها در S3 با جنگو، چند تا مرحله رو باید انجام بدیم:
📥 نصب کتابخانههای مورد نیاز:
اول از همه باید کتابخانههای
⚙ تنظیمات AWS در پروژه جنگو:
حالا باید توی فایل
🔧 تنظیمات پیشرفته S3:
میتونیم تنظیمات بیشتری رو برای بهینهسازی آپلود و دسترسی به فایلها اضافه کنیم:
- AWS_QUERYSTRING_AUTH
حالا هر وقت که بخوای فایلی رو آپلود کنی، به جای اینکه روی سرور ذخیره بشه، به صورت مستقیم به S3 ارسال میشه. خیلی راحته، نه؟ 😎 البته توی جنگو انقدر راحته😅
🧾 تنظیم مسیرهای فایل:
💡 نکات اضافی و پیشنهادها:
🛡 ایمنسازی:
امیدوارم این آموزش برات مفید بوده باشه :) ❤️
@ninja_learn_ir
امروز قراره درباره یکی از موضوعات پرکاربرد و جذاب توی دنیای جنگو صحبت کنیم: آپلود فایل با استفاده از باکت S3! 🎉
📦 باکت S3 چیه و چرا باید ازش استفاده کنیم؟
باکت S3 یا همون Simple Storage Service یکی از سرویسهای محبوب آمازون وب سرویس (AWS) هست که بهت این امکان رو میده فایلهات رو توی فضای ابری ذخیره کنی. این سرویس به خاطر ویژگیهایی مثل مقیاسپذیری بالا امنیت قوی و سرعت زیاد خیلی طرفدار داره.
یه مثال بزنم
فرض کن یه پروژه جنگویی داری که توش کلی فایل مثل عکس، ویدیو یا حتی فایلهای حجیم باید ذخیره بشن. به جای اینکه این فایلها رو روی سرور خودت نگه داری و نگران فضای ذخیرهسازی باشی، میتونی از S3 استفاده کنی تا همه چیز توی فضای ابری مدیریت بشه. 🚀
🎯 حالا چطور میتونیم توی جنگو فایل هارو روی باکت S3 آپلود کنیم؟
برای آپلود فایلها در S3 با جنگو، چند تا مرحله رو باید انجام بدیم:
📥 نصب کتابخانههای مورد نیاز:
اول از همه باید کتابخانههای
django-storages
و boto3
رو نصب کنیم. django-storages
واسه اتصال جنگو به S3 و boto3
برای تعامل با AWS استفاده میشه.pip install django-storages && boto3
⚙ تنظیمات AWS در پروژه جنگو:
حالا باید توی فایل
settings.py
تنظیمات AWS رو اضافه کنیم. برای این کار به AWS_ACCESS_KEY_ID
و AWS_SECRET_ACCESS_KEY
نیاز داری که میتونی از کنسول AWS بگیری.AWS_ACCESS_KEY_ID = 'کلید دسترسیات'
AWS_SECRET_ACCESS_KEY = 'کلید محرمانهات'
AWS_STORAGE_BUCKET_NAME = 'اسم باکتت'
AWS_S3_REGION_NAME = 'منطقه جغرافیایی S3'
AWS_S3_CUSTOM_DOMAIN = f'{AWS_STORAGE_BUCKET_NAME}.s3.amazonaws.com'
DEFAULT_FILE_STORAGE = 'storages.backends.s3boto3.S3Boto3Storage'
🔧 تنظیمات پیشرفته S3:
میتونیم تنظیمات بیشتری رو برای بهینهسازی آپلود و دسترسی به فایلها اضافه کنیم:
AWS_QUERYSTRING_AUTH = False
AWS_DEFAULT_ACL = None
AWS_S3_FILE_OVERWRITE = False
AWS_S3_OBJECT_PARAMETERS = {
'CacheControl': 'max-age=86400',
}
- AWS_QUERYSTRING_AUTH
:
لینکهای فایلهات بدون امضای موقت ساخته میشن.
-
AWS_DEFAULT_ACL:
سطح دسترسی پیشفرض باکت رو اعمال میکنه.
-
AWS_S3_FILE_OVERWRITE:
اگر فایل جدیدی با همون نام آپلود بشه، فایل قبلی حذف نمیشه.
📂 آپلود فایل:حالا هر وقت که بخوای فایلی رو آپلود کنی، به جای اینکه روی سرور ذخیره بشه، به صورت مستقیم به S3 ارسال میشه. خیلی راحته، نه؟ 😎 البته توی جنگو انقدر راحته😅
🧾 تنظیم مسیرهای فایل:
در نهایت میتونیم مسیرهای مربوط به فایلهای استاتیک و مدیا رو هم به S3 متصل کنیم:
AWS_LOCATION = 'media'
STATIC_URL = f'https://{AWS_S3_CUSTOM_DOMAIN}/static/'
MEDIA_URL = f'https://{AWS_S3_CUSTOM_DOMAIN}/{AWS_LOCATION}/
💡 نکات اضافی و پیشنهادها:
🛡 ایمنسازی:
هیچوقت📟 استفاده از presigned URLs:AWS_ACCESS_KEY_ID
و AWS_SECRET_ACCESS_KEY رو توی کد قرار نده. بهتره از متغیرهای محیطی (Environment Variables) استفاده کنی تا امنیت اطلاعاتت حفظ بشه.
اگه میخوای کاربرها مستقیم از سمت کلاینت فایلها رو آپلود کنن میتونی از presigned URLs استفاده کنی که هم امنتره و هم سریعتر.🔬 مانیتورینگ و مدیریت فایلها:
با استفاده از سرویسهایی مثل CloudWatch یا S3 Events میتونی عملیاتهای مربوط به فایلها رو بهتر مدیریت کنی.
#django #s3 #aws #cloud_sto
👍9🔥3👎2
Forwarded from Python BackendHub (Mani)
آیا میدونستید از هر ۵۰ تا رزومه فقط یکیش مصاحبه میگیره؟ آیا میدونستید که تجربه و دانش شما لزوماً به معنای رزومهی بهتر نیست؟ و اینکه خیلی از مهندسای نرمافزار با تغییر رزومشون تونستن درآمدشون رو چند برابر کنن؟
خب، من یه راهحل دارم براتون! چند وقت پیش من یه ریپو داشتم که الان ۳۰۰ ستاره گرفته و توش به تکنیکهای نوشتن رزومه پرداخته بود. حالا وقت گذاشتم و اون رو به Mkdocs تبدیل کردم تا خوندنش راحتتر بشه. کلی قسمت رو آپدیت کردم، مثالهای بیشتر و نمودار و رفرنسهای جدید اضافه کردم، و مطالب رو خیلی مرتبتر کردم.
لینک ریپو
لینک داکیومنشن جدید
اگه این پست و لایبری براتون مفید بود، خوشحال میشم اگه بهش استار بدید. این کار به من انگیزه بیشتری برای توسعه و بهبود فریمورک های اوپن سورس میده. از حمایتتون خیلی ممنونم 🙂 🙏
@PyBackendHub
خب، من یه راهحل دارم براتون! چند وقت پیش من یه ریپو داشتم که الان ۳۰۰ ستاره گرفته و توش به تکنیکهای نوشتن رزومه پرداخته بود. حالا وقت گذاشتم و اون رو به Mkdocs تبدیل کردم تا خوندنش راحتتر بشه. کلی قسمت رو آپدیت کردم، مثالهای بیشتر و نمودار و رفرنسهای جدید اضافه کردم، و مطالب رو خیلی مرتبتر کردم.
لینک ریپو
لینک داکیومنشن جدید
اگه این پست و لایبری براتون مفید بود، خوشحال میشم اگه بهش استار بدید. این کار به من انگیزه بیشتری برای توسعه و بهبود فریمورک های اوپن سورس میده. از حمایتتون خیلی ممنونم 🙂 🙏
@PyBackendHub
👏6
💎 داکر به زبان ساده 🛳🥶
اساسا یک فایل متنی هست که به صورت زیر هست
اگر سوالی دارید یا موضوع خاصی مد نظرتان است که دوست دارید به آن بپردازیم، حتماً در نظرات با ما به اشتراک بگذارید. موفق باشید!❤️❤️❤️❤️
در پست های بعدی بیش تر در مورد داکر و دستورات داکر صحبت خواهیم کرد
امیدوارم براتون مفید واقع شده باشه:)🔥❤
〰〰〰〰〰〰〰〰〰〰〰〰〰〰〰〰〰〰
🧑🏫 Author: @LOOOOOVEEEEEEYOU
مقدمه
داکر یک پلتفورم نرم افزاری برای ساخت اپلیکیشن های مبتنی برا کانتینر هست.
داکر یک محیط اجرایی کوچک و سبک که به طور مشترک از هسته سیستم عامل استفاده میکنند اما در عین حال در یک محیط ایزوله و کاملا جدا
از هم قرار دارند.
زمان معرفی
داکر به عنوان یک پروژه متن باز در سال 2013 معرفی و عرضه شد.
همین باعث شد که توسعه نرم افزار به سمت استفاده از کانتینر ها و میکروسرویس ها برود و بعد ها به عنوان توسعه ابری یا cloude native development شناخته شد.
در ادامه به مبحث container و docker file و docker mage خواهیم پرداخت🔥
منظور از کانتینر چی هست❓container💢🤔
اساسا کانتینر محیط های اجرایی را جدا کرده و هسته سیستم عامل را به اشتراک میگذارد
خوب بیایم با یک مثال عملی با کانتینر ها بیش تر اشنا بشیم🤗😊
فرض کنید در شرکتی مشغول به کار هستید و ناهار خود را هر روز در خانه درست کرده و آن را داخل یک ظرف به شرکت میبرید تا آنجا میل بفرمایید. دیگر لازم نیست داخل شرکت شروع به پختن غذا کنید چون احتمالا زمان زیادی را از شما میگیرد. کار Container هم تا حدودی شبیه به این است. شما پروژه خود را (غذا) داخل Container (ظرف غذا) قرار داده و آن را هر کجا که دوست داشتید (مثلا شرکت) میبرید.
داکر فایل چی هست❓docker file💢🤔
اساسا یک فایل متنی هست که به صورت زیر هست
Dockerfile
این فایل با سینتکس ساده و قابل فهم دستورالعمل های ساخت docker image قرار داده شده که در ادامه ان را بررسی خواهیم کرد این فایل اطلاعات مهمی را در بر میگیرد مثلا مشخص میکند که پشت کانتینر ما چه سیستم عاملی قرار بگیرد و همین طور از چه زبان های برنامه نویسی و متغییر های محلی و پورت های شبکه و یا غیره استفاده میشود و مهم تر از ان این که مشخص شد که کانتینر ما بعد از این که واقعا اجرا شد چه کاری رو انجام دهد🙅🏼♂️
داکر ایمیج چی هست❓docker image💢🤔
در واقع زمانی که نوشتن داکر فایل رو تمام کردید با یک دستور درون ترمینال سیستم خودمان docker build رو فراخوانی میکنیم که وظیفه دارد یک image بر اساس محتویات داکر فایل ما بسازد .
docker image build .
داکر ایمیج یک فایل قابل حمل هست که شامل یکسری دستور العمل ها بوده که مشخص میکند کانتینر کدام کامپوننت نرم افزاری را اجرا کند و یا این که چطور ان ها اجرا شود.ممنونم که تا انتهای این پست همراه من بودید. امیدارم این پست که به اشتراک گذاشتم برای شما مفید بوده باشد. در پستهای بعدی به بررسی جزئیات بیشتری از داکر و دستورات کاربردی آن خواهیم پرداخت. 😎😎😎😎
همان طور این ایمیج ساخته شده استاتیک میباشد یعنی یک بار ساختن ان کافی بوده و نیازی به تغییر ان ندارید مگر این داکر فایل رو تغییر بدهید بر اساس نیازمندی پروژه تان
اگر سوالی دارید یا موضوع خاصی مد نظرتان است که دوست دارید به آن بپردازیم، حتماً در نظرات با ما به اشتراک بگذارید. موفق باشید!❤️❤️❤️❤️
در پست های بعدی بیش تر در مورد داکر و دستورات داکر صحبت خواهیم کرد
🧑🏫 Author: @LOOOOOVEEEEEEYOU
❤19👍2👏1
قسمت ۳ دوره منتشر شد 🥳
لایک و ساب فراموش نشه 😉
https://youtu.be/gen3NCnw5bg?si=ic55NjZwmumL7dGn
@ninja_learn_ir
لایک و ساب فراموش نشه 😉
https://youtu.be/gen3NCnw5bg?si=ic55NjZwmumL7dGn
YouTube
🚀 اموزش مقدماتی DRF - 📚 قسمت 3 - 👨🏫 معرفی Json
خوش اومدی به Ninjalearn اینجا بهت کمک میکنیم تا مهارتهای برنامهنویسی و توسعه وب رو بصورت تخصصی و اصولی یاد بگیری. 💻 از مفاهیم پایه تا تکنیکهای پیشرفته، همه چیز رو به سادهترین و کاربردیترین شکل ممکن آموزش میدیم. با ما همراه شو تا به یک توسعهدهنده حرفهای…
🔥6👍3❤1🤔1
Ninja Learn | نینجا لرن
قسمت ۳ دوره منتشر شد 🥳 لایک و ساب فراموش نشه 😉 https://youtu.be/gen3NCnw5bg?si=ic55NjZwmumL7dGn @ninja_learn_ir
دوستان چون قسمتا تایمشون کمه تصمیم گرفتم روزی دوتا یا سه تا ویدیو اپلود کنم 😁
👍5❤3