דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. תהליך העלאת מערכת fullstack מה-localhost לעולם האמיתי

תהליך העלאת מערכת fullstack מה-localhost לעולם האמיתי

מתוזמן נעוץ נעול הועבר תכנות
57 פוסטים 7 כותבים 1.8k צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • dovidD מחובר
    dovidD מחובר
    dovid ניהול
    כתב ב נערך לאחרונה על ידי dovid
    #16

    הלינק שהבאת מתייחס לאובונטו 16, לך יש ללא ספק משהו חדש יותר, הנה לינק ל23.
    בקשר ל3, אני חושב שבVS אפשר לעדכן בכמה קליקים את הגירסה, אבל גם אם תישאר עם 3 אני חושב שהמדריך רלוונטי רק שבמקום לשים בפקודה dotnet-runtime-7.0 צריך לשים dotnet-runtime-3.1.

    מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

    בכל נושא אפשר ליצור קשר dovid@tchumim.com

    yyyY תגובה 1 תגובה אחרונה
    2
    • yyyY מנותק
      yyyY מנותק
      yyy
      השיב לdovid ב נערך לאחרונה על ידי
      #17

      @dovid כתב בתהליך העלאת מערכת fullstack מה-localhost לעולם האמיתי:

      גם אם תישאר עם 3 אני חושב שהמדריך רלוונטי רק שבמקום לשים בפקודה dotnet-runtime-7.0 צריך לשים dotnet-runtime-3.1.

      אז מה המשמעות של זה?

      The following versions of .NET are ❌ no longer supported:

      .NET 5

      .NET Core 3.1

      .NET Core 3.0

      .NET Core 2.2

      .NET Core 2.1

      .NET Core 2.0

      שאין תמיכה במקרה של תקלות אבל בעצם זה אמור לעבוד?

      תגובה 1 תגובה אחרונה
      0
      • dovidD מחובר
        dovidD מחובר
        dovid ניהול
        כתב ב נערך לאחרונה על ידי
        #18

        נכון, שאין תמיכה ועדכונים ושיש בעיות אבטחה אפשריות.

        מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

        בכל נושא אפשר ליצור קשר dovid@tchumim.com

        תגובה 1 תגובה אחרונה
        2
        • yyyY מנותק
          yyyY מנותק
          yyy
          כתב ב נערך לאחרונה על ידי yyy
          #19

          ניסיתי להתקין באמצעות

          sudo apt-get install dotnet-sdk-3.1
          

          ןקיבלתי את זה

          Get:1 http://security.ubuntu.com/ubuntu lunar-security InRelease [109 kB]
          Hit:2 http://nova.clouds.archive.ubuntu.com/ubuntu lunar InRelease
          Hit:3 http://nova.clouds.archive.ubuntu.com/ubuntu lunar-updates InRelease
          Hit:4 http://nova.clouds.archive.ubuntu.com/ubuntu lunar-backports InRelease
          Fetched 109 kB in 1s (107 kB/s)
          Reading package lists... Done
          Reading package lists... Done
          Building dependency tree... Done
          Reading state information... Done
          E: Unable to locate package dotnet-sdk-3.1
          E: Couldn't find any package by glob 'dotnet-sdk-3.1'
          E: Couldn't find any package by regex 'dotnet-sdk-3.1'
          

          לכן ניסיתי את זה

          ubuntu@vps-XXX:~$ sudo chmod +x ./dotnet-install.sh
          ubuntu@vps-XXX:~$ ./dotnet-install.sh --channel 3.1
          

          אבל כשאני מריץ

          dotnet --info
          

          אני מקבל

          Host:
            Version:      7.0.5
            Architecture: x64
            Commit:       8042d61b17
          
          .NET SDKs installed:
            No SDKs were found.
          
          .NET runtimes installed:
            Microsoft.AspNetCore.App 7.0.5 [/usr/lib/dotnet/shared/Microsoft.AspNetCore.App]
            Microsoft.NETCore.App 7.0.5 [/usr/lib/dotnet/shared/Microsoft.NETCore.App]
          
          Other architectures found:
            None
          
          Environment variables:
            Not set
          
          global.json file:
            Not found
          
          Learn more:
            https://aka.ms/dotnet/info
          
          Download .NET:
            https://aka.ms/dotnet/download
          

          עוד פלט רלוונטי

          ubuntu@vps-XXX:~$ dotnet --list-sdks
          ubuntu@vps-XXX:~$ dotnet --list-runtimes
          Microsoft.AspNetCore.App 7.0.5 [/usr/lib/dotnet/shared/Microsoft.AspNetCore.App]
          Microsoft.NETCore.App 7.0.5 [/usr/lib/dotnet/shared/Microsoft.NETCore.App]
          

          בקיצור הוא על גרסה 7. אמשיך לעדכן...

          תגובה 1 תגובה אחרונה
          0
          • yyyY מנותק
            yyyY מנותק
            yyy
            כתב ב נערך לאחרונה על ידי
            #20

            עכשיו הסרתי את גרסה 7 והנה כשאני מנסה שוב להריץ את הפקודה

            ./dotnet-install.sh --channel 3.1
            

            הוא מודיע לי בחגיגיות ש

            dotnet-install: .NET Core SDK with version '3.1.426' is already installed.
            

            ואז כדי לוודא שיש לי dotnet 3 בהתרגשות אני כותב :

            ubuntu@vps-XXX:~$ dotnet --info
            

            והוא מחזיר לי:

            -bash: /usr/bin/dotnet: No such file or directory
            
            

            איך אפשר לוודא באמת מה מותקן ומה לא?

            תגובה 1 תגובה אחרונה
            0
            • yyyY מנותק
              yyyY מנותק
              yyy
              כתב ב נערך לאחרונה על ידי
              #21

              הפיתרון היה כך

              sudo find / -name dotnet
              

              זה הפלט

              /home/ubuntu/.dotnet/dotnet
              /etc/dotnet
              

              תכל'ס איך מתקדמים?

              תגובה 1 תגובה אחרונה
              0
              • קומפיונטק מנותק
                קומפיונטק מנותק
                קומפיונט
                כתב ב נערך לאחרונה על ידי
                #22

                אני מקווה שאני לא מקשקש, אבל כנראה שבתייקה home/ubuntu/.dotnet/
                נמצאים הקבצים הבינאריים של dotnet, אפשר לנווט לשם עם cd /home/ubuntu/.dotnet ואז להריץ dotnet --info/. אם אכן זה גרסה 3 אז רק צריך להוסיף את התיקייה הזאת למשתני הסביבה.

                yyyY תגובה 1 תגובה אחרונה
                1
                • yyyY מנותק
                  yyyY מנותק
                  yyy
                  השיב לקומפיונט ב נערך לאחרונה על ידי
                  #23

                  @קומפיונט זה אכן מה שעשיתי.

                  תגובה 1 תגובה אחרונה
                  1
                  • קומפיונטק מנותק
                    קומפיונטק מנותק
                    קומפיונט
                    כתב ב נערך לאחרונה על ידי
                    #24

                    @yyy אני רק מוסיף הערת אגב, אם הוספת את התיקייה למשתני הסביבה עם הפקודה:

                    PATH="$PATH:/home/ubuntu/.dotnet"
                    

                    אז בהפעלה מחדש זה לא יישאר ב-PATH, כדי לשנות את זה לתמיד צריך לערוך את הקובץ etc/environment/
                    לדוגמא עם sudo nano /etc/environment ולהוסיף שם את הנתיב (עם הפרדה של :) ולשמור.

                    yyyY תגובה 1 תגובה אחרונה
                    2
                    • yyyY מנותק
                      yyyY מנותק
                      yyy
                      השיב לקומפיונט ב נערך לאחרונה על ידי
                      #25

                      @קומפיונט נכון, וגם זה נכנס לתוקף רק אחרי ריסטרט של המערכת.

                      תגובה 1 תגובה אחרונה
                      1
                      • yyyY מנותק
                        yyyY מנותק
                        yyy
                        כתב ב נערך לאחרונה על ידי
                        #26

                        העתקתי את קבצי ההרצה של הדוטנט אחרי ה-publish לשרת ובינתיים שאני מנסה להריץ את קובץ התוכנית באמצעות הפקודה

                        dotnet myProgram
                        

                        נתקלתי בשתי שגיאות:

                        שגיאה 1

                        Process terminated. Couldn't find a valid ICU package installed on the system. Set the configuration flag System.Globalization.Invariant to true if you want to run with no globalization support.
                           at System.Environment.FailFast(System.String)
                           at System.Globalization.GlobalizationMode.GetGlobalizationInvariantMode()
                           at System.Globalization.GlobalizationMode..cctor()
                           at System.Globalization.CultureData.CreateCultureWithInvariantData()
                           at System.Globalization.CultureData.get_Invariant()
                           at System.Globalization.CultureInfo..cctor()
                           at System.String.ToLowerInvariant()
                           at Microsoft.DotNet.PlatformAbstractions.RuntimeEnvironment.GetArch()
                           at Microsoft.DotNet.PlatformAbstractions.RuntimeEnvironment..cctor()
                           at Microsoft.DotNet.PlatformAbstractions.RuntimeEnvironment.GetRuntimeIdentifier()
                           at Microsoft.DotNet.Cli.MulticoreJitProfilePathCalculator.CalculateProfileRootPath()
                           at Microsoft.DotNet.Cli.MulticoreJitActivator.StartCliProfileOptimization()
                           at Microsoft.DotNet.Cli.MulticoreJitActivator.TryActivateMulticoreJit()
                           at Microsoft.DotNet.Cli.Program.Main(System.String[])
                        Aborted (core dumped)
                        

                        ממה שהבנתי חסר לו איזה מרכיב של תמיכה בגלובליזציה

                        הפתרון שהוצע לי היה:

                        sudo apt-get install libicu-dev
                        

                        זה לא עזר.
                        פתרון נוסף הוא

                         export DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=true
                        

                        וזה לכאורה עובד אלא שיתכן שהשגיאה הבאה נובעת מפיתרון מאולתר זה.
                        שגיאה 2

                        No usable version of libssl was found
                        Aborted (core dumped)
                        

                        הבנתי שהשגיאה נובעת מחוסר בספריית OpenSSL.
                        ניסיתי את זה:

                        sudo apt-get install libssl-dev
                        

                        והשגיאה עדיין ממשיכה.
                        למישהו יש נסיון עם זה? פספסתי התקנה של משהו?

                        תגובה 1 תגובה אחרונה
                        0
                        • yyyY מנותק
                          yyyY מנותק
                          yyy
                          כתב ב נערך לאחרונה על ידי yyy
                          #27

                          שאלה נוספת: מה עדיף לאנגולר Apache או Nginx?

                          dovidD צדיק תמיםצ 2 תגובות תגובה אחרונה
                          0
                          • dovidD מחובר
                            dovidD מחובר
                            dovid ניהול
                            השיב לyyy ב נערך לאחרונה על ידי dovid
                            #28

                            @yyy אנגולר מאוד אדיש ביחס לשאלה הזאת.
                            אבל אני מאוד אוהב nginx ואומרים שהוא גם טוב יותר.

                            עריכה: מיקרוסופט ממליצה על nginx כשרת פרוקסי עבור asp.net.

                            מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                            בכל נושא אפשר ליצור קשר dovid@tchumim.com

                            yyyY תגובה 1 תגובה אחרונה
                            2
                            • צדיק תמיםצ מנותק
                              צדיק תמיםצ מנותק
                              צדיק תמים
                              השיב לyyy ב נערך לאחרונה על ידי צדיק תמים
                              #29

                              @yyy כתב בתהליך העלאת מערכת fullstack מה-localhost לעולם האמיתי:

                              שאלה נוספת: מה עדיף לאנגולר Apache או Nginx?

                              אנגולר אחרי build זה בעצם קבצים סטטיים (בעיקר טקסט, אולי גם כמה תמונות),
                              אני ממליץ על Caddy בגלל הקונפיגורציה שלו שהיא קלה ופשוטה בצורה מדהימה + נותן HTTPS אוטומטי באופן מובנה,
                              הפרומיל ביצועים שאולי תקבל יותר בnginx הוא לא משהו שרלוונטי לסדרי גודל שלך, וגם לא בטוח שהוא בכלל קיים.

                              Don’t comment bad code — rewrite it." — Brian W. Kernighan and P. J. Plaugher"
                              טיפים

                              yyyY תגובה 1 תגובה אחרונה
                              3
                              • yyyY מנותק
                                yyyY מנותק
                                yyy
                                השיב לdovid ב נערך לאחרונה על ידי
                                #30

                                @dovid כתב בתהליך העלאת מערכת fullstack מה-localhost לעולם האמיתי:

                                עריכה: מיקרוסופט ממליצה על nginx כשרת פרוקסי עבור asp.net.

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

                                dovidD תגובה 1 תגובה אחרונה
                                0
                                • yyyY מנותק
                                  yyyY מנותק
                                  yyy
                                  השיב לצדיק תמים ב נערך לאחרונה על ידי
                                  #31

                                  @צדיק-תמים כתב בתהליך העלאת מערכת fullstack מה-localhost לעולם האמיתי:

                                  @yyy כתב בתהליך העלאת מערכת fullstack מה-localhost לעולם האמיתי:

                                  שאלה נוספת: מה עדיף לאנגולר Apache או Nginx?

                                  אנגולר אחרי build זה בעצם קבצים סטטיים (בעיקר טקסט, אולי גם כמה תמונות),
                                  אני ממליץ על Caddy בגלל הקונפיגורציה שלו שהיא קלה ופשוטה בצורה מדהימה + נותן HTTPS אוטומטי באופן מובנה,
                                  הפרומיל ביצועים שאולי תקבל יותר בnginx הוא לא משהו שרלוונטי לסדרי גודל שלך, וגם לא בטוח שהוא בכלל קיים.

                                  אשמור את המלצתך להמשך. כעת אני מעוניין להתנסות בכלים היותר סנטנדרטיים ומצויים.

                                  תגובה 1 תגובה אחרונה
                                  0
                                  • dovidD מחובר
                                    dovidD מחובר
                                    dovid ניהול
                                    השיב לyyy ב נערך לאחרונה על ידי
                                    #32

                                    @yyy כתב בתהליך העלאת מערכת fullstack מה-localhost לעולם האמיתי:

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

                                    אתה שאלת אם apach או nginx.
                                    בהקשר הזה (של תוכנה שרצה בעצמה כמו asp.ney או nodejs) הם מכונים שניהם פרוקסי הפוך.
                                    עזוב את המינוח, סה"כ עניתי על שאלתך.

                                    מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                                    בכל נושא אפשר ליצור קשר dovid@tchumim.com

                                    תגובה 1 תגובה אחרונה
                                    1
                                    • yyyY מנותק
                                      yyyY מנותק
                                      yyy
                                      כתב ב נערך לאחרונה על ידי
                                      #33

                                      חזרתי לאחר הפסקת מה.

                                      האנגולר עובד הדוטנט רץ. מותקן openSsl.

                                      אני מקבל את השגיאה הבאה כשאני מנסה ליצור תקשורת https

                                      curl: (35) error:1408F10B:SSL routines:ssl3_get_record:wrong version number
                                      

                                      זה קשור לכך שלא מוגדר לי Kestrel ב-AppSetting.json אלא רק iis express?
                                      תודה!

                                      dovidD תגובה 1 תגובה אחרונה
                                      0
                                      • dovidD מחובר
                                        dovidD מחובר
                                        dovid ניהול
                                        השיב לyyy ב נערך לאחרונה על ידי
                                        #34

                                        @yyy כתב בתהליך העלאת מערכת fullstack מה-localhost לעולם האמיתי:

                                        אני מנסה ליצור תקשורת https

                                        המשפט הזה מעורפל, מי מנסה ומאיפה לאיפה?
                                        וגם, הלכת בסוף על nginx?

                                        מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                                        בכל נושא אפשר ליצור קשר dovid@tchumim.com

                                        תגובה 1 תגובה אחרונה
                                        0
                                        • yyyY מנותק
                                          yyyY מנותק
                                          yyy
                                          כתב ב נערך לאחרונה על ידי
                                          #35

                                          אוקי אז הנה תקציר.
                                          התקנתי nginx + קונפיגורציה והאנגולר עולה בלי צד שרת כמובן.
                                          לאחר התקשקשות עם תאימות לגרסאות מיושנות של דוטנט, הגעתי לתובנה שעדיף פשוט לעבוד על גרסה שהיא "out of the box" (יש תרגום מקובל לעברית?).
                                          העברתי את הפרוייקט לדוטנט 7 והפרוייקט רץ. בשביל הטסט יצרתי שני קונטרולרים, אחד מחזיר מספר מדוטנט עצמו ואחד מחזיר מה-DB.
                                          ב-DB עצמו עוד לא נגעתי ואני מנסה לראות קודם שהתקשורת עם הדוטנט עובדת טוב.

                                          מה שקורה שכשאני מנסה לגשת לקונטרולר באמצעות tls/ssl (במילים אחרות https) מקבל את השגיאה הנ"ל.
                                          דוגמא

                                          //with http
                                          ubuntu@vps-c2df8674:~$ curl http://localhost:5000/api/Numbers/GetNumbersFromDotnet
                                          1 2 3 4 5 from dotnet
                                          //with https
                                          ubuntu@vps-c2df8674:~$ curl https://localhost:5000/api/Numbers/GetNumbersFromDotnet
                                          curl: (35) error:1408F10B:SSL routines:ssl3_get_record:wrong version number
                                          //wrong
                                          ubuntu@vps-c2df8674:~$ curl --tlsv1 https://localhost:5000/api/Numbers/GetNumbersFromDotnet
                                          curl: (35) error:1408F10B:SSL routines:ssl3_get_record:wrong version number
                                          
                                          

                                          שאלה נוספת:
                                          האם curl הוא הכלי המקובל לנסיונות שכאלו (אין UI כמובן)?

                                          תודה רבה.

                                          yossizY dovidD 3 תגובות תגובה אחרונה
                                          0

                                          • 1
                                          • 2
                                          • 3
                                          בא תתחבר לדף היומי!
                                          • התחברות

                                          • אין לך חשבון עדיין? הרשמה

                                          • התחברו או הירשמו כדי לחפש.
                                          • פוסט ראשון
                                            פוסט אחרון
                                          0
                                          • דף הבית
                                          • קטגוריות
                                          • פוסטים אחרונים
                                          • משתמשים
                                          • חיפוש
                                          • חוקי הפורום