Skip to content

Epitest Docker Wrapper - Run your Epitech projects in the same environment as the Moulinette. Simple shell script to test your projects in Epitech's official Docker container (epitechcontent/epitest-docker).

License

Notifications You must be signed in to change notification settings

WilliamJlvt/epitest-docker-script

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Epitest Docker Script

$ epitest make
[CC] src/main.c
[CC] src/utils.c
[BIN] my_program

$ epitest ./my_program
Hello from Epitech environment!

$ epitest bash
root@f45d75a42:/home/epitech# ls
Makefile  includes/  src/  tests/

Un script shell permettant d'exécuter facilement l'environnement Epitech dans un conteneur Docker.

⚠️ Testé uniquement sur Fedora, macOS Sequoia 15.3 et Windows 10 - Les autres environnements sont listés à titre indicatif mais n'ont pas été vérifiés

Prérequis

Installation

⚠️ La première utilisation peut prendre plusieurs minutes car l'image Docker (epitechcontent/epitest-docker) doit être téléchargée (environ 2GB). Vous devrez peut-être vous connecter à Docker Hub avec vos identifiants (docker login) pour pouvoir télécharger l'image.

ℹ️ Le script lance toujours l'environnement en mode linux/amd64, même sur les architectures ARM (comme les Mac M1->M4). Cela garantit une compatibilité maximale avec l'environnement Epitech, mais peut impacter légèrement les performances sur les processeurs ARM.

Linux

Fedora Example

Ubuntu/Debian

# Installation de Docker si non installé
sudo apt update
sudo apt install docker.io

# Installation du script
sudo wget -O /usr/local/bin/epitest https://raw.githubusercontent.com/WilliamJlvt/epitest-docker-script/main/epitest
sudo chmod +x /usr/local/bin/epitest

Arch Linux

# Installation de Docker si non installé
sudo pacman -S docker

# Installation du script
sudo wget -O /usr/local/bin/epitest https://raw.githubusercontent.com/WilliamJlvt/epitest-docker-script/main/epitest
sudo chmod +x /usr/local/bin/epitest

Fedora

# Installation de Docker si non installé
sudo dnf install docker

# Installation du script
sudo wget -O /usr/local/bin/epitest https://raw.githubusercontent.com/WilliamJlvt/epitest-docker-script/main/epitest
sudo chmod +x /usr/local/bin/epitest

macOS

macOS Example

# Installation de Docker si non installé
brew install --cask docker

# Installation du script
sudo curl -o /usr/local/bin/epitest https://raw.githubusercontent.com/WilliamJlvt/epitest-docker-script/main/epitest
sudo chmod +x /usr/local/bin/epitest

Alternative pour macOS (si problème de permissions) :

# Créer un dossier bin dans votre home
mkdir -p ~/bin

# Installation du script
curl -o ~/bin/epitest https://raw.githubusercontent.com/WilliamJlvt/epitest-docker-script/main/epitest
chmod +x ~/bin/epitest

# Ajouter le chemin à votre PATH (à ajouter dans ~/.zshrc ou ~/.bash_profile)
echo 'export PATH="$HOME/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc

Windows

Deux options sont disponibles :

Option 1 : Script Batch (.bat) - Solution Native (non recommandé)

Windows Example Cette option, bien que plus simple à mettre en place, n'est pas recommandée pour plusieurs raisons :

  • Performance réduite par rapport à WSL2
  • Gestion des chemins Windows/Linux parfois problématique

Si vous souhaitez tout de même utiliser cette option :

  1. Installer Docker Desktop pour Windows
  2. Créer un fichier epitest.bat dans C:\Windows avec le contenu du fichier epitest.bat

Option 2 : WSL2 (recommandé pour les développeurs) (recommandé)

  1. Installer WSL2
  2. Installer Docker Desktop pour Windows
  3. Dans votre distribution Linux WSL2 :
# Installation du script
sudo wget -O /usr/local/bin/epitest https://raw.githubusercontent.com/WilliamJlvt/epitest-docker-script/main/epitest
sudo chmod +x /usr/local/bin/epitest

Note: Si vous utilisez WSL2, assurez-vous d'activer l'intégration Docker dans les paramètres de Docker Desktop

Utilisation

Le script peut être utilisé comme suit :

# Se placer dans le répertoire de votre projet
cd /chemin/vers/votre/projet

# Exécuter une commande dans l'environnement Epitech
epitest make
epitest ls
epitest ./my_program

# Lancer un shell interactif
epitest bash

Dépannage

Docker n'est pas lancé

# Linux
sudo systemctl start docker

# macOS & Windows
Lancer Docker Desktop

Permissions Docker (Linux)

# Ajouter votre utilisateur au groupe docker
sudo usermod -aG docker $USER

# Redémarrer votre session ou exécuter
newgrp docker

About

Epitest Docker Wrapper - Run your Epitech projects in the same environment as the Moulinette. Simple shell script to test your projects in Epitech's official Docker container (epitechcontent/epitest-docker).

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published