docker, שאלה לגבי אפשרויות דיפלויימנט

bismark1

New member
docker, שאלה לגבי אפשרויות דיפלויימנט

יש לי אפליקציה שבנויה כאוסף של microservices שמתקשרים בינהם עם איזשהו message broker (נניח רדיס), כל העסק רץ על גבי אותה מכונה (לפחות כרגע). במקור התכוונתי לארוז כל קומפוננטה בדוקר משלה ולחבר את הכל עם docker-compose. הבעיה: אחד הסרויסים צריך לעבוד מול gpu מה שנתמך בדוקר אבל מסתבר שלא ב-compose. השאלה מה כדאי לעשות במקרה כזה? -להריץ את מה שאפשר ב-compose ועוד דוקר אחד עצמאי שינהל את עצמו (ואם כן, איך? דרך המנגנון של הדוקר? supervisor? אחר?) -כלי אחר? (אני רץ על מכונה אחת, יש טעם להסתכל על כלים כמו kubernetes או swarm?) -לוותר על הקונטיינר הספציפי הזה ולעבוד מול הברזלים של ההוסט? -...? עצות יתקבלו בברכה.
 

eveik

New member
למיטב ידיעתי..

docker compose משמש לפיתוח, לא משתמשים בזה לפרודקשיין. וגם אם כן, ממליץ בחום להשתמש ב kubernetes - כל העולם כבר דיי שם ומי שלא איפשהוא בדרך :)
 

bismark1

New member
תודה

הסיבה שאני כרגע נרתע מזה היא שזה נראה לי קצת אוברקיל* בשביל כמה פרוססים שחולקים את אותו אינסטנס בלי סקייל אפ נראה לעין אבל יכול להיות שלא תהיה ברירה ולשם נלך. *לפחות לצוות שכרגע לא ממש מחזיק איש דבאופס
 
הצעות

1. אולי אפשר לוותר על ה"דוקריזציה" המלאה, ולעבור ל supervisord? כלומר להריץ הכל באותו דוקר, זה שיש לו את היכולת לעבוד עם ה GPU, ולהמיר את ניהול הפרוססים ב supervisord או משהו דומה 2. יכול להיות שיהיה לך יותר נוח לעבוד עם minikube במקום קוברנטיס. זה קצת יותר מתאים לאינסטנס בודד.
 

bismark1

New member
אתה מתכוון לזה ש-supervisord ירוץ בתוך הדוקר?

זה יכול לעבוד אם כי קראתי כבר בכמה מקומות שלא כדאי לערבב. את minikube לא הכרתי, תודה!
 
למעלה