dockerize کردن یک پروژه asp با قابلیت تعیین کانکشن استرینگ به نوان environment
سلام و وقت بخیر
بنده میخوام یک پروژه asp.net core رو dockerize کنم و برای هر بار run کردن image بتونم بهش مقدار connection string رو به صورت environment variable پاس بدم تا از اون استفاده کنه
ممنون میشم راهنماییم کنید.
پاسخ ها
![user](/_ipx/f_webp&q_50&blur_3&s_10x10/codeyad/assets/img/UserAvatars/50655e66-86e5-4e25-9c29-7f4f3980c193.jpg)
محمد اشرافی
سلام ، وقت شما هم بخیر باشه
این لینک رو ببینید طبق این پیاده سازی کنید
![user](/_ipx/f_webp&q_50&blur_3&s_10x10/codeyad/assets/img/UserAvatars/730bd61b-cc44-48f2-bdb2-0c94f2e151f0140003062311125447894.jpg)
سجاد میرشبی
ممنون استاد پیاده سازی کردم
ولی الان یه مشکل دیگه که دارم این هست که برنامه رو با داکر که اجرا میکنم کار نمیکنه و ارور Site cannot reach میده
به نظرتون مشکل از چی هست؟
![user](/_ipx/f_webp&q_50&blur_3&s_10x10/codeyad/assets/img/UserAvatars/50655e66-86e5-4e25-9c29-7f4f3980c193.jpg)
محمد اشرافی
توی Kestrel چه خطایی میده ؟
![user](/_ipx/f_webp&q_50&blur_3&s_10x10/codeyad/assets/img/UserAvatars/50655e66-86e5-4e25-9c29-7f4f3980c193.jpg)
محمد اشرافی
اگر به Kestrel دسترسی ندارید -d رو به container اضافه نکنید
![user](/_ipx/f_webp&q_50&blur_3&s_10x10/codeyad/assets/img/UserAvatars/730bd61b-cc44-48f2-bdb2-0c94f2e151f0140003062311125447894.jpg)
سجاد میرشبی
kestrel چی هست استاد؟
هم با -d و هم بدون اون تست کردم
چندین port متفاوت هم تست کردم ،80 ، 5000، 433 ولی فایده نداشت
![user](/_ipx/f_webp&q_50&blur_3&s_10x10/codeyad/assets/img/UserAvatars/730bd61b-cc44-48f2-bdb2-0c94f2e151f0140003062311125447894.jpg)
سجاد میرشبی
و اینکه استاد توی log های اجرا شدن برنامه اروری نمیاد اصلا
برنامه اجرا میشه
ولی بهش دسترسی ندارم
![user](/_ipx/f_webp&q_50&blur_3&s_10x10/codeyad/assets/img/UserAvatars/50655e66-86e5-4e25-9c29-7f4f3980c193.jpg)
محمد اشرافی
احتمال زیاد مشکل از آدرس sql ه ، به این مورد توجه کنید که Container شما نمی تونه به بیرون دسترسی داشته باشه مگر اینکه توی یک شبکه باشن
![user](/_ipx/f_webp&q_50&blur_3&s_10x10/codeyad/assets/img/UserAvatars/730bd61b-cc44-48f2-bdb2-0c94f2e151f0140003062311125447894.jpg)
سجاد میرشبی
استاد اصلا به SQL وصلش نکردم هنوز
یک Action داخلش یه string برگردوندم اونو تست میکنم ولی فایده نداره و همون اروری که گفتم رو میده
![user](/_ipx/f_webp&q_50&blur_3&s_10x10/codeyad/assets/img/UserAvatars/50655e66-86e5-4e25-9c29-7f4f3980c193.jpg)
محمد اشرافی
یه لاگر مثل Nlog یا Serilog نصب کن و لاگ رو توی فایل ذخیره کن ببینم چه خطایی میده
![user](/_ipx/f_webp&q_50&blur_3&s_10x10/codeyad/assets/img/UserAvatars/730bd61b-cc44-48f2-bdb2-0c94f2e151f0140003062311125447894.jpg)
سجاد میرشبی
استاد ارور نمیده اصلا
روی پروژه لوکال که تست میکنم اوکی بود ولی الان اصلا requset رو دریافت نمیکنه
گزارش خروجی رو توی ضمیمه قرار میدم
![user](/_ipx/f_webp&q_50&blur_3&s_10x10/codeyad/assets/img/UserAvatars/50655e66-86e5-4e25-9c29-7f4f3980c193.jpg)
محمد اشرافی
وقتی enviroment variable ست نکرده بودی مشکلی نداشت ؟
توی این لاگ ها گفته که هاست ساخته شده
![user](/_ipx/f_webp&q_50&blur_3&s_10x10/codeyad/assets/img/UserAvatars/730bd61b-cc44-48f2-bdb2-0c94f2e151f0140003062311125447894.jpg)
سجاد میرشبی
نه استاد هم با env ها و هم بدون اون ها تست کردم
برنامه روی داکر اجرا میشه بدون هیچ مشکل و اروری ولی من نمیتونم بهش دسترسی داشته باشم
این برنامه روی پورت کاستوم 5110 اجرا میشه، اون رو هم تغییر دادم به همون 5000 و تست کردم باز هم جواب نداد
روی پرت های 80 و 433 هم که پورت ها رو ست میکردم باز هم نمیتونستم ریکوست بفرستم
![user](/_ipx/f_webp&q_50&blur_3&s_10x10/codeyad/assets/img/UserAvatars/50655e66-86e5-4e25-9c29-7f4f3980c193.jpg)
محمد اشرافی
میشه اون کدی که برای ساخت Container می نویسید و عکس Docker File اتون رو برام بفرستید
![user](/_ipx/f_webp&q_50&blur_3&s_10x10/codeyad/assets/img/UserAvatars/730bd61b-cc44-48f2-bdb2-0c94f2e151f0140003062311125447894.jpg)
سجاد میرشبی
بله حتما
کدی که برای اجرای Container اجرا میکنم:
docker run -dp 5110:80 <image-name> -e ASPNETCORE_ENVIRONMENT="Production" -e CONNECTION_STRING="Server=192.168.2.3;Database=App;User Id=sa;Password=123" -e SERVICE_NAME="Cdn"
dockerfile رو هم در ضمیمه قرار میدم براتون
![user](/_ipx/f_webp&q_50&blur_3&s_10x10/codeyad/assets/img/UserAvatars/730bd61b-cc44-48f2-bdb2-0c94f2e151f0140003062311125447894.jpg)
سجاد میرشبی
استاد dockerfile رو مجبور شدم به txt تبدیل کنم تا بتونم در ضمیمه قرار بدم
توی پروژه بدون extension هست