<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="he">
	<id>https://wiki.netfree.link/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Chaimfn</id>
	<title>ויקי נטפרי - תרומות המשתמש [he]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.netfree.link/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Chaimfn"/>
	<link rel="alternate" type="text/html" href="https://wiki.netfree.link/wiki/%D7%9E%D7%99%D7%95%D7%97%D7%93:%D7%AA%D7%A8%D7%95%D7%9E%D7%95%D7%AA/Chaimfn"/>
	<updated>2026-05-15T05:28:08Z</updated>
	<subtitle>תרומות המשתמש</subtitle>
	<generator>MediaWiki 1.35.13</generator>
	<entry>
		<id>https://wiki.netfree.link/index.php?title=Installation_of_certificate_in_Docker&amp;diff=15252</id>
		<title>Installation of certificate in Docker</title>
		<link rel="alternate" type="text/html" href="https://wiki.netfree.link/index.php?title=Installation_of_certificate_in_Docker&amp;diff=15252"/>
		<updated>2023-12-27T07:36:51Z</updated>

		<summary type="html">&lt;p&gt;Chaimfn: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{he|התקנת_תעודה_ב-Docker}}&lt;br /&gt;
{{Navigation|Security certificate}}&lt;br /&gt;
&lt;br /&gt;
Docker is a system that allows creating self-contained environments within the hosting OS.&lt;br /&gt;
&lt;br /&gt;
==Dealing with certificate errors from apps within the container==&lt;br /&gt;
&lt;br /&gt;
A Docker container is a self-contained system; almost like a seperate computer.&lt;br /&gt;
Tools and apps that run within the container and try to connect to the Internet will not recognize Netfree's certificate, therefore it is nessecary to install Netfree's root certificate into the container&lt;br /&gt;
&lt;br /&gt;
===Installing the certificate in popular images===&lt;br /&gt;
&lt;br /&gt;
Add the following lines to the DOCEKRFILE under the FROM line. (Adavnced users can add the lines at a later stage - before the first stage that requires Internet connectivity):&lt;br /&gt;
&lt;br /&gt;
 # --- NETFREE CERT INTSALL ---&lt;br /&gt;
 ADD https://netfree.link/dl/unix-ca.sh /home/netfree-unix-ca.sh &lt;br /&gt;
 RUN cat  /home/netfree-unix-ca.sh | sh&lt;br /&gt;
 ENV NODE_EXTRA_CA_CERTS=/etc/ca-bundle.crt&lt;br /&gt;
 ENV REQUESTS_CA_BUNDLE=/etc/ca-bundle.crt&lt;br /&gt;
 ENV SSL_CERT_FILE=/etc/ca-bundle.crt&lt;br /&gt;
 # --- END NETFREE CERT INTSALL ---&lt;br /&gt;
&lt;br /&gt;
The commands have been tested succesfully on images based on Ubuntu, Alpine &amp;amp; Centos.&lt;br /&gt;
It also correctly sets the environment variables for correct running of nodejs &amp;amp; Python&lt;br /&gt;
&lt;br /&gt;
===Dealing with problems and instructions for other images===&lt;br /&gt;
&lt;br /&gt;
Obviously every image/app has it's own requirements, if you encounter difficulties you can ask in the support center (always include the content of the DOCKERFILE if possible, or at minimun the base image, and a full error log).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Prepared images (not official)===&lt;br /&gt;
Below some images prepared for working in Netfree environment, who made by an user for netfree-users. They are not official images by Netfree itself.&lt;br /&gt;
&lt;br /&gt;
Those images are made in a few linux-archs (amd/arm etc.) as detailed on each one.&lt;br /&gt;
&lt;br /&gt;
Since Netfree is working with multi internet providers, those images are made to working with some of those providers.&amp;lt;br /&amp;gt;&lt;br /&gt;
The list of those supported providers is appears as Labels, such as 'provider-bezeq=true'.&lt;br /&gt;
&lt;br /&gt;
Images list (look for '.netfree' in image-tag):&lt;br /&gt;
&lt;br /&gt;
* [https://hub.docker.com/r/chaimfn/dotnet_aspnet dotnet/aspnet]&lt;br /&gt;
* [https://hub.docker.com/r/chaimfn/dotnet_sdk dotnet/sdk]&lt;br /&gt;
* [https://hub.docker.com/r/chaimfn/node node]&lt;br /&gt;
* [https://hub.docker.com/r/chaimfn/python python]&lt;br /&gt;
* [https://hub.docker.com/r/chaimfn/nginx nginx]&lt;br /&gt;
* [https://hub.docker.com/r/chaimfn/php php]&lt;br /&gt;
* [https://hub.docker.com/r/chaimfn/buildkit buildkit]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Another option===&lt;br /&gt;
&lt;br /&gt;
https://github.com/AriFordsham/docker-cert&lt;br /&gt;
&lt;br /&gt;
The above project provides a wrapper script for the docker comand. Put the script somehwere in you PATH where it has precedence to the built in docker command. The script will transparently import root certificates from the host to the container obviating the need to edit the image. The script is known to work in Linux or WSL2 environments.&lt;br /&gt;
For questions and problems, ask at: https://forum.netfree.link/topic/9301 or open a Github issue.&lt;br /&gt;
&lt;br /&gt;
==Errors originating from the Docker daemon==&lt;br /&gt;
&lt;br /&gt;
The Docker daemon itself also uses the Internet to download images from repositories such as Docker Hub.&lt;br /&gt;
In general it does not encounter issues because it uses the OS certificate store.&lt;br /&gt;
אם אתם נתקלים בשגיאה בשלב הזה (בד&amp;quot;כ בשורת FROM של קובץ Dockerfile או בפקודת docker pull או docker run), השגיאה נראית ככה:&lt;br /&gt;
&lt;br /&gt;
 Get https://registry-1.docker.io/v2/: x509: certificate signed by unknown authority&lt;br /&gt;
&lt;br /&gt;
או &lt;br /&gt;
&lt;br /&gt;
 Error response from daemon: Get https://registry-1.docker.io/v2/: x509: certificate signed by unknown authority.&lt;br /&gt;
&lt;br /&gt;
*ראשית ודאו שהתקנתם את התעודה של נטפרי במערכת שלכם (אם זה עתה התקנתם את התעודה, יש להפעיל מחדש את הDocker, הפעלת המחשב מחדש כמובן גם טובה).&lt;br /&gt;
*אם מדובר בהתקנה של Docker Toolbox, אז לא די בתעודה ברמת המערכת הפעלה כי מערכת זו עושה שימוש במערכת וירטואלית לפעולות של Docker עצמה.&lt;br /&gt;
&lt;br /&gt;
במקרה זה הפעילו את הטרמינל של Docker והריצו בו את הפקודות הבאות:&lt;br /&gt;
 docker-machine ssh default&lt;br /&gt;
 curl -L &amp;lt;nowiki&amp;gt;http://api.internal.netfree.link/ca/netfree-ca.crt&amp;lt;/nowiki&amp;gt; | sudo tee -a /etc/ssl/certs/ca-certificates.crt /var/lib/boot2docker/certs&lt;br /&gt;
 sudo /etc/init.d/docker restart &lt;br /&gt;
 exit&lt;br /&gt;
&lt;br /&gt;
==Errors in the Minikube software level==	&lt;br /&gt;
Minikube software provides a system for running kubernetes, and operates an internal Docker environment, if you encounter a security certificate error or alternatively installing its packages does not work smoothly.&lt;br /&gt;
	&lt;br /&gt;
In this case, run the minikube terminal and run the following commands:&lt;br /&gt;
&lt;br /&gt;
 minikube ssh&lt;br /&gt;
 curl -sL &amp;lt;nowiki&amp;gt;http://netfree.link/dl/ubuntuCertInstallNetFree.sh&amp;lt;/nowiki&amp;gt; | sudo -E bash -&lt;br /&gt;
 sudo /etc/init.d/docker restart&lt;br /&gt;
 exit&lt;/div&gt;</summary>
		<author><name>Chaimfn</name></author>
	</entry>
	<entry>
		<id>https://wiki.netfree.link/index.php?title=%D7%94%D7%AA%D7%A7%D7%A0%D7%AA_%D7%AA%D7%A2%D7%95%D7%93%D7%94_%D7%91-Docker&amp;diff=15241</id>
		<title>התקנת תעודה ב-Docker</title>
		<link rel="alternate" type="text/html" href="https://wiki.netfree.link/index.php?title=%D7%94%D7%AA%D7%A7%D7%A0%D7%AA_%D7%AA%D7%A2%D7%95%D7%93%D7%94_%D7%91-Docker&amp;diff=15241"/>
		<updated>2023-12-25T12:43:37Z</updated>

		<summary type="html">&lt;p&gt;Chaimfn: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{עמוד באנגלית|Installation of certificate in Docker}}&lt;br /&gt;
{{קישור לתצוגת קריאה}}&lt;br /&gt;
{{ניווט|תעודת האבטחה}}&lt;br /&gt;
&lt;br /&gt;
Docker הינה תוכנה שמאפשרת לבנות סביבות הרצה עצמאיות על גבי מערכת הפעלה.&lt;br /&gt;
&lt;br /&gt;
==שגיאות אבטחה ביישומים והרצות מתוך הקונטיינר==&lt;br /&gt;
קונטיינר של Docker מספק סביבה עצמאית - כמין מחשב חדש בפני עצמו.&lt;br /&gt;
&lt;br /&gt;
כלים ותוכנות שפועלות בתוך הקונטיינר וניגשים לאינטרנט יתקלו בתעודה לא מוכרת של נטפרי, ולכן צריך להתקין את התעודה של נטפרי ברמת הקונטיינר.&lt;br /&gt;
&lt;br /&gt;
===התקנת תעודת אבטחה בתמונות הנפוצות===&lt;br /&gt;
&lt;br /&gt;
יש להוסיף את השורות הבאות לDockerfile, מתחת לשורת הFROM (במידה ואתם יודעים את טיב הפעולות תוכלו לשים אותו מאוחר ככל היותר לפני השלב הראשון בו נצרכת התעודה):&lt;br /&gt;
&lt;br /&gt;
 # --- NETFREE CERT INTSALL ---&lt;br /&gt;
 ADD https://netfree.link/dl/unix-ca.sh /home/netfree-unix-ca.sh &lt;br /&gt;
 RUN cat  /home/netfree-unix-ca.sh | sh&lt;br /&gt;
 ENV NODE_EXTRA_CA_CERTS=/etc/ca-bundle.crt&lt;br /&gt;
 ENV REQUESTS_CA_BUNDLE=/etc/ca-bundle.crt&lt;br /&gt;
 ENV SSL_CERT_FILE=/etc/ca-bundle.crt&lt;br /&gt;
 # --- END NETFREE CERT INTSALL ---&lt;br /&gt;
&lt;br /&gt;
התעודה נבדקה על תמונות מבוססות ubuntu,alpine,centos &lt;br /&gt;
וזה מגדיר גם משתני סביבה להפעלה תקינה של python ו nodejs&lt;br /&gt;
&lt;br /&gt;
=== במקרה של קונטיינר קיים, ללא אפשרות לשנות את ה Dockerfile ===&lt;br /&gt;
יש להכנס לתוך הדוקר (פקודת docker exec, או דרך התוכנה docker-desktop) ולהריץ בתוכו את הפקודה:&lt;br /&gt;
&lt;br /&gt;
 curl  &amp;lt;nowiki&amp;gt;https://netfree.link/dl/unix-ca.sh&amp;lt;/nowiki&amp;gt; | sh&lt;br /&gt;
&lt;br /&gt;
לאחר מכן לערוך את הקובץ ~/.bashrc ולהוסיף לו את הפקודות הבאות:&lt;br /&gt;
&lt;br /&gt;
 export NODE_EXTRA_CA_CERTS=/etc/ca-bundle.crt&lt;br /&gt;
 export REQUESTS_CA_BUNDLE=/etc/ca-bundle.crt&lt;br /&gt;
 export SSL_CERT_FILE=/etc/ca-bundle.crt&lt;br /&gt;
&lt;br /&gt;
===במקרה של שימוש בdocker compose ללא Dockerfile===&lt;br /&gt;
ניתן לשלב את הוראות ההתקנה כפקודה יחידה, בתוך הקובץ docker-compose.yml, עבור הservice שבו יש צורך להתקין את תעודות האבטחה.&lt;br /&gt;
לצורך הדגמה:&lt;br /&gt;
&lt;br /&gt;
 #docker-compose.yml file example&lt;br /&gt;
 version: &amp;quot;3.9&amp;quot;&lt;br /&gt;
 services:&lt;br /&gt;
   your-app:&lt;br /&gt;
     image: node&lt;br /&gt;
     command: sh -c &amp;quot;(curl -sL https://netfree.link/dl/unix-ca.sh | sh ) &amp;amp;&amp;amp; export NODE_EXTRA_CA_CERTS=/etc/ca-bundle.crt &amp;amp;&amp;amp; npm install &amp;amp;&amp;amp; npm start&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===במקרה בעיה, ולהוראות מתאימות לתמונות אחרות===&lt;br /&gt;
&lt;br /&gt;
כמובן שלכל תמונה ויישומים שבתוכה יש את הדרך שלה, במקרה שאתם מתקשים היעזרו במערכת הפניות (כללו תמיד בפניה את תוכן/קובץ הdockerfile במידת האפשר, ולפחות את שם תבנית התמונה, ולוג מלא ככל האפשר של השגיאה).&lt;br /&gt;
&lt;br /&gt;
נסו גם להיעזר בפורומים טכניים.&lt;br /&gt;
&lt;br /&gt;
===תמונות מוכנות===&lt;br /&gt;
להלן כמה תמונות מוכנות לעבודה בסביבת נטפרי.&lt;br /&gt;
&lt;br /&gt;
התמונות הוכנו בכמה תצורות לינוקס (amd/arm וכד'), כמפורט על כל אחת מהן.&lt;br /&gt;
&lt;br /&gt;
היות ונטפרי עובדים עם כמה ספקי אינטרנט, התמונות הוכנו לעבודה מול כמה ספקים. רשימת הספקים הנתמכים מופיעה כ- Labels, לדוג': 'provider-bezeq=true'.&lt;br /&gt;
&lt;br /&gt;
רשימת התמונות (חפשו 'netfree.' ב-tag):&lt;br /&gt;
&lt;br /&gt;
* [https://hub.docker.com/r/chaimfn/dotnet_aspnet dotnet/aspnet]&lt;br /&gt;
* [https://hub.docker.com/r/chaimfn/dotnet_sdk dotnet/sdk]&lt;br /&gt;
* [https://hub.docker.com/r/chaimfn/node node]&lt;br /&gt;
* [https://hub.docker.com/r/chaimfn/python python]&lt;br /&gt;
* [https://hub.docker.com/r/chaimfn/nginx nginx]&lt;br /&gt;
* [https://hub.docker.com/r/chaimfn/php php]&lt;br /&gt;
* [https://hub.docker.com/r/chaimfn/buildkit buildkit]&lt;br /&gt;
&lt;br /&gt;
===אפשרות נוספת===&lt;br /&gt;
https://github.com/AriFordsham/docker-cert&lt;br /&gt;
&lt;br /&gt;
בפרוייקט הנ&amp;quot;ל יש סקריפט שאפשר להכניס במיקום כלשהו ב-PATH עם זכות קדימה לפקודת docker המקורית כך שהסקריפט יעטוף את פקודת docker המקורית. הסקריפט מייבא בצורה שקופה את התעודות של המערכת המארחת לתוך הקונטיינר בלי צורך לשנות את ה-DOCKERFILE. זה עובד במערכות לינוקס וווינדוס-WSL.&lt;br /&gt;
&lt;br /&gt;
שאלות ובעיות בהפעלת הסקריפט ניתן לשאול כאן: https://forum.netfree.link/topic/9301&lt;br /&gt;
&lt;br /&gt;
==שגיאות ברמת תוכנת הDocker עצמה==&lt;br /&gt;
&lt;br /&gt;
תוכנת Docker עצמה משתמשת באינטרנט עבור הורדה של תמונה מהDocker hub או מקור אינטרנטי אחר,&lt;br /&gt;
בדרך כלל פעולה זו לא נתקלת בשגיאה של תעודת אבטחה כי התכונה מסתמכת על מאגר התעודות המותקן במחשב.&lt;br /&gt;
&lt;br /&gt;
אם אתם נתקלים בשגיאה בשלב הזה (בד&amp;quot;כ בשורת FROM של קובץ Dockerfile או בפקודת docker pull או docker run), השגיאה נראית ככה:&lt;br /&gt;
&lt;br /&gt;
 Get https://registry-1.docker.io/v2/: x509: certificate signed by unknown authority&lt;br /&gt;
&lt;br /&gt;
או &lt;br /&gt;
&lt;br /&gt;
 Error response from daemon: Get https://registry-1.docker.io/v2/: x509: certificate signed by unknown authority.&lt;br /&gt;
&lt;br /&gt;
*ראשית ודאו שהתקנתם את התעודה של נטפרי במערכת שלכם (אם זה עתה התקנתם את התעודה, יש להפעיל מחדש את הDocker, הפעלת המחשב מחדש כמובן גם טובה).&lt;br /&gt;
*אם מדובר בהתקנה של Docker Toolbox, אז לא די בתעודה ברמת המערכת הפעלה כי מערכת זו עושה שימוש במערכת וירטואלית לפעולות של Docker עצמה.&lt;br /&gt;
&lt;br /&gt;
במקרה זה הפעילו את הטרמינל של Docker והריצו בו את הפקודות הבאות:&lt;br /&gt;
 docker-machine ssh default&lt;br /&gt;
 curl -L &amp;lt;nowiki&amp;gt;http://api.internal.netfree.link/ca/netfree-ca.crt&amp;lt;/nowiki&amp;gt; | sudo tee -a /etc/ssl/certs/ca-certificates.crt /var/lib/boot2docker/certs&lt;br /&gt;
 sudo /etc/init.d/docker restart &lt;br /&gt;
 exit&lt;br /&gt;
==שגיאות ברמת תוכנת  Minikube==&lt;br /&gt;
&lt;br /&gt;
תוכנת Minikube מספק מערכת להרצת kubernetes, ומפעיל סביבת Docker פנימי, אם אתם נתקלים בשגיאה של תעודת אבטחה או לחילופין התקנת חבילות שלו לא עבודת חלק.&lt;br /&gt;
&lt;br /&gt;
במקרה זה הפעילו את הטרמינל של minikube והריצו בו את הפקודות הבאות:&lt;br /&gt;
 minikube ssh&lt;br /&gt;
 curl -sL &amp;lt;nowiki&amp;gt;http://netfree.link/dl/ubuntuCertInstallNetFree.sh&amp;lt;/nowiki&amp;gt; | sudo -E bash -&lt;br /&gt;
 sudo /etc/init.d/docker restart&lt;br /&gt;
 exit&lt;/div&gt;</summary>
		<author><name>Chaimfn</name></author>
	</entry>
</feed>