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

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

גרסה מ־22:11, 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