הבדלים בין גרסאות בדף "התקנת תעודה ב-Docker"

מתוך ויקי נטפרי
קפיצה אל: ניווט, חיפוש
מ (כתובת התעודה שונתה)
 
(4 גרסאות ביניים של אותו משתמש אינן מוצגות)
שורה 4: שורה 4:
 
{{ניווט|תעודת האבטחה}}
 
{{ניווט|תעודת האבטחה}}
  
== הגדרת תעודה עבור תוכנת Docker ==
+
Docker הינה תוכנה שמאפשרת לבנות סביבות הרצה עצמאיות על גבי מערכת הפעלה.
תוכנת Docker משתמשת בתעודת האבטחה של השרת ממנו הוא מוריד את תמונת המערכת עבור הקונטיינר כדי לאמת את מקור הקונטיינר. כדי ש-Docker יעבוד בסביבה מסוננת של נטפרי צריך לגרום לתוכנה לסמוך על התעודה של נטפרי.
 
  
ברוב סוגי התקנה של Docker מספיק להתקין את התעודה במערכת ההפעלה המארחת בדרך הרגילה.
+
== שגיאות ברמת תוכנת הDocker עצמה ==
  
אומנם בהתקנת Docker Toolbox ב-Windows, כל הפעולות של Docker נעשות מתוך מכונה וירטואלית. יש צורך להתקין את תעודת האבטחה של נטפרי לתוך המכונה הוירטואלית.
+
תוכנת Docker עצמה משתמשת באינטרנט עבור הורדה של תמונה מהDocker hub או מקור אינטרנטי אחר,
 +
בדרך כלל פעולה זו לא נתקלת בשגיאה של תעודת אבטחה כי התכונה מסתמכת על מאגר התעודות המותקן במחשב.
  
כדי להתקין את תעודת האבטחה של נטפרי במכונה הוירטואלית, יש להריץ את הפקודות הבאות בטרמינל של Docker:
+
אם אתם נתקלים בשגיאה בשלב הזה (בד"כ בשורת FROM של קובץ Dockerfile או בפקודת docker pull או docker run), השגיאה נראית ככה:
 +
 
 +
Get https://registry-1.docker.io/v2/: x509: certificate signed by unknown authority
 +
 
 +
או
 +
 
 +
Error response from daemon: Get https://registry-1.docker.io/v2/: x509: certificate signed by unknown authority.
 +
 
 +
* ראשית ודאו שהתקנתם את התעודה של נטפרי במערכת שלכם (אם זה עתה התקנתם את התעודה, יש להפעיל מחדש את הDocker, הפעלת המחשב מחדש כמובן גם טובה).
 +
* אם מדובר בהתקנה של Docker Toolbox, אז לא די בתעודה ברמת המערכת הפעלה כי מערכת זו עושה שימוש במערכת וירטואלית לפעולות של Docker עצמה.
 +
במקרה זה הפעילו את הטרמינל של Docker והריצו בו את הפקודות הבאות:
 
  docker-machine ssh default
 
  docker-machine ssh default
 
  curl -L <nowiki>http://netfree.link/netfree-ca.crt</nowiki> | sudo tee -a /etc/ssl/certs/ca-certificates.crt /var/lib/boot2docker/certs
 
  curl -L <nowiki>http://netfree.link/netfree-ca.crt</nowiki> | sudo tee -a /etc/ssl/certs/ca-certificates.crt /var/lib/boot2docker/certs
שורה 17: שורה 27:
 
  exit
 
  exit
  
== תעבורה יוצאת מתוך הקונטיינר ==
+
== שגיאות אבטחה ביישומים והרצות מתוך הקונטיינר ==
 +
קונטיינר של Docker מספק סביבה עצמאית - כמין מחשב חדש בפני עצמו.
 +
כלים ותוכנות שפועלות בתוך הקונטיינר וניגשים לאינטרנט יתקלו בתעודה לא מוכרת של נטפרי, ולכן צריך להתקין את התעודה של נטפרי ברמת הקונטיינר, בהתאם לסוג החבילה/סגנון
 +
 
 
בעת השימוש בדוקר, כאשר מבוצעת תעבורה החוצה מהקונטיינר, בין ע"י הרצת פקודות ובין בקריאות לשרת חיצוני, לא די בהתקנת תעודת האבטחה במחשב המקומי, יש להתקין את התעודה גם בקונטיינר בהתאם למערכת הפעלה שלה.
 
בעת השימוש בדוקר, כאשר מבוצעת תעבורה החוצה מהקונטיינר, בין ע"י הרצת פקודות ובין בקריאות לשרת חיצוני, לא די בהתקנת תעודת האבטחה במחשב המקומי, יש להתקין את התעודה גם בקונטיינר בהתאם למערכת הפעלה שלה.
  
 
[[תעודת האבטחה|כאן]] יש הוראות להתקנת תעודה האבטחה במערכות הפעלה שונות.
 
[[תעודת האבטחה|כאן]] יש הוראות להתקנת תעודה האבטחה במערכות הפעלה שונות.
  
 +
רוב התמונות מבוססות linux, ולכן ההתקנה צריכה להיות דומה לזה.
 +
ניתן להתקין בקונטיינר באותם דרכים שמריצים בו כל פקודה: או ע"י RUN בבניית התמונה, או ע"י exce מאוחר יותר.
 +
להלן הוראות עבור dockerfile למערכות מבוססות אובנטו, למערכות אחרות יש לבדוק את המקבילות לכל פעולה.
 +
 +
=== התקנת תעודת אבטחה בתמונה מבוססת אובנטו ===
  
 
יש להוסיף את השורה הבאה לDockerfile:
 
יש להוסיף את השורה הבאה לDockerfile:
  
 
  RUN apt-get update && apt-get install -y curl sudo && curl -sL http://netfree.link/dl/ubuntuCertInstallNetFree.sh | bash -
 
  RUN apt-get update && apt-get install -y curl sudo && curl -sL http://netfree.link/dl/ubuntuCertInstallNetFree.sh | bash -
 +
 +
התקנה מותאמת אישית שכוללת את הוספת התעודה לנוד:
 +
 +
# העתיקו את הקבצים netfree-ca-bundle-curl.crt וnetfree-ca-list.crt מהתיקיה C:\ProgramData\NetFree\CA לתיקיה בה הDockerfile נמצא.
 +
# הוסיפו את השורות הבאות לקובץ הDockerfile:
 +
 +
COPY netfree-ca-list.crt /usr/share/ca-certificates/extra/netfree-ca.crt
 +
RUN apt-get update && apt-get upgrade
 +
RUN apt-get install -y ca-certificates
 +
RUN update-ca-certificates
 +
 +
COPY netfree-ca-bundle-curl.crt /netfree-ca-bundle.crt
 +
ENV NODE_EXTRA_CA_CERTS /netfree-ca-bundle.crt
 +
 +
כמובן שלכל תמונה ויישומים שבתוכה יש את הדרך שלה, במקרה שאתם מתקשים היעזרו במערכת הפניות (כללו תמיד בפניה את תוכן/קובץ הdockerfile במידת האפשר, ולפחות את שם תבנית התמונה, ולוג מלא ככל האפשר של השגיאה).
 +
 +
נסו גם להיעזר בפורומים טכניים.

גרסה אחרונה מ־23:41, 26 במרץ 2020

For English click here

למעבר מתצוגת עריכה לתצוגת קריאה

עמוד ראשי > תעודת האבטחה > התקנת תעודה ב-Docker ‎‎


Docker הינה תוכנה שמאפשרת לבנות סביבות הרצה עצמאיות על גבי מערכת הפעלה.

שגיאות ברמת תוכנת הDocker עצמה

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

אם אתם נתקלים בשגיאה בשלב הזה (בד"כ בשורת FROM של קובץ Dockerfile או בפקודת docker pull או docker run), השגיאה נראית ככה:

Get https://registry-1.docker.io/v2/: x509: certificate signed by unknown authority

או

Error response from daemon: Get https://registry-1.docker.io/v2/: x509: certificate signed by unknown authority.
  • ראשית ודאו שהתקנתם את התעודה של נטפרי במערכת שלכם (אם זה עתה התקנתם את התעודה, יש להפעיל מחדש את הDocker, הפעלת המחשב מחדש כמובן גם טובה).
  • אם מדובר בהתקנה של Docker Toolbox, אז לא די בתעודה ברמת המערכת הפעלה כי מערכת זו עושה שימוש במערכת וירטואלית לפעולות של Docker עצמה.

במקרה זה הפעילו את הטרמינל של Docker והריצו בו את הפקודות הבאות:

docker-machine ssh default
curl -L http://netfree.link/netfree-ca.crt | sudo tee -a /etc/ssl/certs/ca-certificates.crt /var/lib/boot2docker/certs
sudo /etc/init.d/docker restart 
exit

שגיאות אבטחה ביישומים והרצות מתוך הקונטיינר

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

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

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

רוב התמונות מבוססות linux, ולכן ההתקנה צריכה להיות דומה לזה. ניתן להתקין בקונטיינר באותם דרכים שמריצים בו כל פקודה: או ע"י RUN בבניית התמונה, או ע"י exce מאוחר יותר. להלן הוראות עבור dockerfile למערכות מבוססות אובנטו, למערכות אחרות יש לבדוק את המקבילות לכל פעולה.

התקנת תעודת אבטחה בתמונה מבוססת אובנטו

יש להוסיף את השורה הבאה לDockerfile:

RUN apt-get update && apt-get install -y curl sudo && curl -sL http://netfree.link/dl/ubuntuCertInstallNetFree.sh | bash -

התקנה מותאמת אישית שכוללת את הוספת התעודה לנוד:

  1. העתיקו את הקבצים netfree-ca-bundle-curl.crt וnetfree-ca-list.crt מהתיקיה C:\ProgramData\NetFree\CA לתיקיה בה הDockerfile נמצא.
  2. הוסיפו את השורות הבאות לקובץ הDockerfile:
COPY netfree-ca-list.crt /usr/share/ca-certificates/extra/netfree-ca.crt
RUN apt-get update && apt-get upgrade
RUN apt-get install -y ca-certificates
RUN update-ca-certificates

COPY netfree-ca-bundle-curl.crt /netfree-ca-bundle.crt
ENV NODE_EXTRA_CA_CERTS /netfree-ca-bundle.crt

כמובן שלכל תמונה ויישומים שבתוכה יש את הדרך שלה, במקרה שאתם מתקשים היעזרו במערכת הפניות (כללו תמיד בפניה את תוכן/קובץ הdockerfile במידת האפשר, ולפחות את שם תבנית התמונה, ולוג מלא ככל האפשר של השגיאה).

נסו גם להיעזר בפורומים טכניים.