Compile on Docker/fr: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
(Updating to match new version of source page)
(42 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<languages/>
<languages/>
{{UnfinishedDocu}}
{{UnfinishedDocu{{#translation:}}}}
{{Docnav
|[[Compile on MacOS|Compile on MacOS]]
|[[FreeCAD Docker CLI mode|FreeCAD Docker CLI mode]]
}}


{{Docnav/fr
==Overview==
|[[Compile_on_MacOS/fr|Compiler sous MacOS]]
|[[FreeCAD_Docker_CLI_mode/fr|FreeCAD Docker mode CLI]]
}}


{{TOCright}}
{{TOCright}}


== Présentation ==
Among the options for building and installing FreeCAD, there is the option of using Docker. This method is primarily useful for FreeCAD developers, using Linux or Mac OS computers.


Parmi les options de compilation et d'installation de FreeCAD, il existe la possibilité d'utiliser Docker. Cette méthode est principalement utile pour les développeurs FreeCAD, utilisant des ordinateurs Linux ou Mac OS.
===Benefits===


===Avantages===
All of FreeCAD's dependencies are already installed, compatible with each other, and configured appropriately, allowing you to get started developing very quickly.
* The dependencies are contained within the docker container, preventing any unwanted packages contaminating your workstation, and preventing any clashing versions.
* The source code and build directories are outside the docker container. This allows you to use your preferred editors, versioning systems, dev tools etc, without having to set them up in the docker container. You can just use them as normal, right from your workstation. (Also, it means you don't have to rebuild the docker container each time you want to build FreeCAD.)
* For those using obscure *nix distros and [[Compile_on_Linux/Unix#Getting_the_dependencies|instructions are not available]] for fetching dependencies, all you need to install on your workstation is docker, which is quite commonly available across many distributions.
* It provides a static, immutable development environment. I personally find this useful when developing to reduce the number of potential variables that could be causing an issue. You know you've not altered something esoteric in the environment between builds. For developers collaborating, and both using the same docker container, you can be sure you're both working from the same environment, which reduces communication errors caused by differences in environment.


Toutes les dépendances de FreeCAD sont déjà installées, compatibles les unes avec les autres et configurées de manière appropriée, ce qui vous permet de commencer à développer très rapidement.
==Docker Repository==
* Les dépendances sont contenues dans le conteneur de docker, empêchant tout paquet indésirable de contaminer votre poste de travail et empêchant toute version en conflit.
* Le code source et les répertoires de construction sont en dehors du conteneur docker. Cela vous permet d'utiliser vos éditeurs, systèmes de versionnage, outils de développement, etc. préférés, sans avoir à les configurer dans le conteneur Docker. Vous pouvez simplement les utiliser comme d'habitude, directement depuis votre poste de travail. (En outre, cela signifie que vous n'avez pas à reconstruire le conteneur Docker chaque fois que vous souhaitez créer FreeCAD.)
* Pour ceux qui utilisent des distributions *nix obscures, les [[Compile_on_Linux/fr#Obtenir_les_d.C3.A9pendances|instructions ne sont pas disponibles]] pour récupérer les dépendances, tout ce dont vous avez besoin pour installer sur votre poste de travail est docker, qui est généralement disponible dans de nombreuses distributions.
* Fournit un environnement de développement statique et immuable. Personnellement, je trouve cela utile lors du développement pour réduire le nombre de variables potentielles qui pourraient causer un problème. Vous savez que vous n'avez pas modifié quelque chose d'ésotérique dans l'environnement entre les versions. Pour les développeurs collaborant et utilisant tous les deux le même conteneur Docker, vous pouvez être sûr que vous travaillez tous les deux à partir du même environnement, ce qui réduit les erreurs de communication causées par les différences d'environnement.


==Dépôt Docker==
* Original: https://gitlab.com/daviddaish/freecad_docker_env
* Official: https://GitHub.com/FreeCAD/Docker


* Source: https://gitlab.com/daviddaish/freecad_docker_env
==Prerequisites==
* Officiel: https://GitHub.com/FreeCAD/Docker


==Prérequis==
* 10GB of free storage

* 10 GB de mémoire libre
* Docker
* Docker


==Installation==
==Installation==


===Download the source===
===Charger les sources===


The best way to get FreeCAD's source code is to clone the [https://github.com/FreeCAD/FreeCAD Git repository]. For this you need the {{incode|git}} program which can be easily installed in most Linux and Mac OS distributions, and it can also be obtained from the [http://git-scm.com/ official website].
La meilleure façon d'obtenir le code source de FreeCAD est de cloner le [https://github.com/FreeCAD/FreeCAD dépôt Git]. Pour cela, vous avez besoin du programme {{incode|git}} qui peut être facilement installé dans la plupart des distributions Linux et Mac OS, et il peut également être obtenu sur le [http://git-scm.com/ site officiel].


This will place a copy of the latest version of the FreeCAD source code in a new directory called {{incode|freecad_source}}.
Ceci créera une copie de la dernière version du code source de FreeCAD dans un nouveau répertoire nommé {{incode|freecad-source}}.


{{Code|lang=bash|code=
{{Code|lang=bash|code=
Line 42: Line 43:
}}
}}


Pour plus d'informations sur l'utilisation de Git et sur la contribution de code au projet, voir [[Source_code_management/fr|gestion du code source]].
For more information on using Git, and contributing code to the project, see [[Source code management|Source code management]].


==== Source archive ====
==== Source sous forme archive ====
Alternatively you can download the source as an [https://github.com/FreeCAD/FreeCAD/releases/latest archive], a {{incode|.zip}} or {{incode|.tar.gz}} file, and unpack it in the desired directory.
Vous pouvez alternativement télécharger la [https://github.com/FreeCAD/FreeCAD/releases/latest source sous forme d'archive], en fichier {{incode|.zip}} ou {{incode|.tar.gz}}, et décompresser cela dans le dossier voulu.


===Créer le répertoire de compilation===
===Create build directory===


Create a directory to hold your compiled FreeCAD source.
Créez un répertoire pour contenir votre source FreeCAD compilée.


{{Code|lang=bash|code=
{{Code|lang=bash|code=
Line 55: Line 56:
}}
}}


===Pull Docker image===
===Récupérer l'image Docker===


Pull the Docker image. (Official image coming soon.)
Récupérez l'image Docker. (Image officielle à venir.)


{{Code|lang=bash|code=
{{Code|lang=bash|code=
Line 63: Line 64:
}}
}}


===Autoriser l'accès à votre gestionnaire de fenêtres===
===Allow access to your window manager===


Pour que FreeCAD lance son interface graphique à partir du conteneur Docker, vous devez donner des autorisations d'accès Docker à votre gestionnaire de fenêtres. Dans la plupart des distributions Linux, il s'agit du système X window. Vous pouvez utiliser la commande ci-dessous pour autoriser l'accès général à X, jusqu'à ce que vous redémarriez ou déconnectiez votre ordinateur.
In order for FreeCAD to launch it's GUI from within the Docker container, you need to give Docker access permissions to your window manager. In most Linux distributions, this is the X window system. You can use the below command to allow blanket access to X, until you reboot or logoff your computer.


{{Code|lang=bash|code=
{{Code|lang=bash|code=
Line 71: Line 72:
}}
}}


If you're connected to any untrusted systems, such as via {{incode|ssh}}, this will make you vulnerable to malicious code. Either close any {{incode|ssh}} connections, or look into more secure xhost permissions, which is outside the scope of this tutorial.
Si vous êtes connecté à des systèmes non approuvés, par exemple par {{incode|ssh}}, cela vous rendra vulnérable au code malveillant. Fermez toutes les connexions {{incode|ssh}} ou recherchez des autorisations xhost plus sécurisées, ce qui est hors de la portée de ce didacticiel.


====Mac OS users====
====Utilisateurs de Mac OS====


For those using Mac OS, the X window system may not be installed. The XQuartz project is a long running open source project that will allow you to add it to your computer. [https://www.xquartz.org/ You can find it here].
Pour ceux qui utilisent Mac OS, le système X Window peut ne pas être installé. Le projet XQuartz est un projet open source de longue durée qui vous permettra de l'ajouter à votre ordinateur. [https://www.xquartz.org/ Vous pouvez le trouver ici].


===Launch the docker image===
===Lancer l'image Docker===


Attribuez des variables d'environnement afin que le conteneur Docker monte le code source de FreeCAD et crée le répertoire. De plus, vous pouvez monter un répertoire supplémentaire pour contenir tous les fichiers que vous souhaitez utiliser à des fins de test. Dans l'extrait ci-dessous, nous l'avons laissé comme répertoire personnel par défaut.
Assign environment variables so the Docker container will mount FreeCAD's source code, and build directory. In addition, you can mount an extra directory to contain any files you'd like to use for testing purposes. In the below snippet, we've left it as your home directory as a simple default.


{{Code|lang=bash|code=
{{Code|lang=bash|code=
Line 87: Line 88:
}}
}}


Launch the Docker image.
Lancez l'image Docker.


{{Code|lang=bash|code=
{{Code|lang=bash|code=
Line 98: Line 99:
}}
}}


===Build FreeCAD===
===Compiler FreeCAD===


Vous pouvez compiler FreeCAD en utilisant le script de compilation installé ou en utilisant votre méthode préférée.
You can build FreeCAD using the installed build script, or using your preferred method.


{{Code|lang=bash|code=
{{Code|lang=bash|code=
Line 106: Line 107:
}}
}}


===Run FreeCAD===
===Lancer FreeCAD===


Once FreeCAD has been built, it can be run as normal.
Une fois que FreeCAD a été compilé, il peut être exécuté normalement.


{{Code|lang=bash|code=
{{Code|lang=bash|code=
Line 114: Line 115:
}}
}}


You can find the attached directories in the {{incode|/mnt}} directory.
Vous pouvez trouver les répertoires joints dans le répertoire {{incode|/mnt}}.


==Discussion==
==Discussion==
Line 122: Line 123:
* [https://forum.freecadweb.org/viewtopic.php?p=427812#p427812 VSCode setup with Docker (2)]
* [https://forum.freecadweb.org/viewtopic.php?p=427812#p427812 VSCode setup with Docker (2)]


==Related==
==En relation==

* [[AppImage/fr|AppImage]]


* [[AppImage]]


{{Docnav
{{Docnav/fr
|[[Compile on MacOS|Compile on MacOS]]
|[[Compile_on_MacOS/fr|Compiler sous MacOS]]
|[[FreeCAD_Docker_CLI_mode/fr|FreeCAD Docker mode CLI]]
|[[Compiling (Speeding up)|Compiling (Speeding up)]]
}}
}}



Revision as of 19:50, 25 January 2022

Cette documentation n'est pas terminée. Merci de nous aider et de contribuer à la documentation.

Modèle GuiCommand explique comment les commandes doivent être documentées. Parcourez Category:UnfinishedDocu pour voir d'autres pages incomplètes comme celle-ci. Voir Category:Command_Reference pour toutes les commandes.

Voir Écrire une page Wiki pour apprendre à éditer les pages du wiki, et aller à Contribuer à FreeCAD pour apprendre d'autres façons de contribuer.

Présentation

Parmi les options de compilation et d'installation de FreeCAD, il existe la possibilité d'utiliser Docker. Cette méthode est principalement utile pour les développeurs FreeCAD, utilisant des ordinateurs Linux ou Mac OS.

Avantages

Toutes les dépendances de FreeCAD sont déjà installées, compatibles les unes avec les autres et configurées de manière appropriée, ce qui vous permet de commencer à développer très rapidement.

  • Les dépendances sont contenues dans le conteneur de docker, empêchant tout paquet indésirable de contaminer votre poste de travail et empêchant toute version en conflit.
  • Le code source et les répertoires de construction sont en dehors du conteneur docker. Cela vous permet d'utiliser vos éditeurs, systèmes de versionnage, outils de développement, etc. préférés, sans avoir à les configurer dans le conteneur Docker. Vous pouvez simplement les utiliser comme d'habitude, directement depuis votre poste de travail. (En outre, cela signifie que vous n'avez pas à reconstruire le conteneur Docker chaque fois que vous souhaitez créer FreeCAD.)
  • Pour ceux qui utilisent des distributions *nix obscures, les instructions ne sont pas disponibles pour récupérer les dépendances, tout ce dont vous avez besoin pour installer sur votre poste de travail est docker, qui est généralement disponible dans de nombreuses distributions.
  • Fournit un environnement de développement statique et immuable. Personnellement, je trouve cela utile lors du développement pour réduire le nombre de variables potentielles qui pourraient causer un problème. Vous savez que vous n'avez pas modifié quelque chose d'ésotérique dans l'environnement entre les versions. Pour les développeurs collaborant et utilisant tous les deux le même conteneur Docker, vous pouvez être sûr que vous travaillez tous les deux à partir du même environnement, ce qui réduit les erreurs de communication causées par les différences d'environnement.

Dépôt Docker

Prérequis

  • 10 GB de mémoire libre
  • Docker

Installation

Charger les sources

La meilleure façon d'obtenir le code source de FreeCAD est de cloner le dépôt Git. Pour cela, vous avez besoin du programme git qui peut être facilement installé dans la plupart des distributions Linux et Mac OS, et il peut également être obtenu sur le site officiel.

Ceci créera une copie de la dernière version du code source de FreeCAD dans un nouveau répertoire nommé freecad-source.

git clone https://github.com/FreeCAD/FreeCAD.git ~/my_code/freecad_source

Pour plus d'informations sur l'utilisation de Git et sur la contribution de code au projet, voir gestion du code source.

Source sous forme archive

Vous pouvez alternativement télécharger la source sous forme d'archive, en fichier .zip ou .tar.gz, et décompresser cela dans le dossier voulu.

Créer le répertoire de compilation

Créez un répertoire pour contenir votre source FreeCAD compilée.

mkdir ~/my_code/freecad_build

Récupérer l'image Docker

Récupérez l'image Docker. (Image officielle à venir.)

docker pull registry.gitlab.com/daviddaish/freecad_docker_env:latest

Autoriser l'accès à votre gestionnaire de fenêtres

Pour que FreeCAD lance son interface graphique à partir du conteneur Docker, vous devez donner des autorisations d'accès Docker à votre gestionnaire de fenêtres. Dans la plupart des distributions Linux, il s'agit du système X window. Vous pouvez utiliser la commande ci-dessous pour autoriser l'accès général à X, jusqu'à ce que vous redémarriez ou déconnectiez votre ordinateur.

xhost +

Si vous êtes connecté à des systèmes non approuvés, par exemple par ssh, cela vous rendra vulnérable au code malveillant. Fermez toutes les connexions ssh ou recherchez des autorisations xhost plus sécurisées, ce qui est hors de la portée de ce didacticiel.

Utilisateurs de Mac OS

Pour ceux qui utilisent Mac OS, le système X Window peut ne pas être installé. Le projet XQuartz est un projet open source de longue durée qui vous permettra de l'ajouter à votre ordinateur. Vous pouvez le trouver ici.

Lancer l'image Docker

Attribuez des variables d'environnement afin que le conteneur Docker monte le code source de FreeCAD et crée le répertoire. De plus, vous pouvez monter un répertoire supplémentaire pour contenir tous les fichiers que vous souhaitez utiliser à des fins de test. Dans l'extrait ci-dessous, nous l'avons laissé comme répertoire personnel par défaut.

fc_source=~/my_code/freecad_source
fc_build=~/my_code/freecad_build
other_files=~/

Lancez l'image Docker.

docker run -it --rm \
-v $fc_source:/mnt/source \
-v $fc_build:/mnt/build \
-v $other_files:/mnt/files \
-e "DISPLAY" -e "QT_X11_NO_MITSHM=1" -v /tmp/.X11-unix:/tmp/.X11-unix:ro \
registry.gitlab.com/daviddaish/freecad_docker_env:latest

Compiler FreeCAD

Vous pouvez compiler FreeCAD en utilisant le script de compilation installé ou en utilisant votre méthode préférée.

/root/build_script.sh

Lancer FreeCAD

Une fois que FreeCAD a été compilé, il peut être exécuté normalement.

/mnt/build/bin/FreeCAD

Vous pouvez trouver les répertoires joints dans le répertoire /mnt.

Discussion

En relation