Bladeren bron

Merge branch 'master' of http://gogs.eldarsoft.com/jmbatto/julia_workbench

Jean-Michel Batto 3 weken geleden
bovenliggende
commit
97454e273d
2 gewijzigde bestanden met toevoegingen van 28 en 12 verwijderingen
  1. 24 8
      Dockerfile
  2. 4 4
      docker-compose.yml

+ 24 - 8
Dockerfile

@@ -2,19 +2,26 @@
 FROM julia:1.10-bookworm
 
 # Métadonnées
-LABEL maintainer="CodeBuddy"
+LABEL maintainer="jmbatto"
 LABEL description="Environnement de portage Julia -> C avec PDI/HDF5 et Outils graphiques"
 
 # Arguments pour gérer l'utilisateur (évite les fichiers root sur le host)
-ARG USER_ID=1000
-ARG GROUP_ID=1000
-ARG USER_NAME=engineer
+ARG USER_ID=1001
+ARG GROUP_ID=1001
+ARG USER_NAME=coder
 
 # 1. Installation des dépendances système (C/C++, HDF5, Outils graphiques, Build tools)
 # Nous incluons gdb et valgrind pour la rigueur du C.
 # Nous incluons les libs X11 pour l'affichage des plots.
 RUN apt-get update && apt-get install -y --no-install-recommends \
     build-essential \
+	nano \
+	sudo \
+	lsof \
+	gawk \
+	emacs \
+	jq \
+	neofetch \
     cmake \
     git \
     libhdf5-dev \
@@ -29,8 +36,17 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
     libxtst6 \
     xauth \
     ca-certificates \
+	iputils-ping \
+	pkg-config \
+	colordiff \
+	mpi-default-dev \
     && rm -rf /var/lib/apt/lists/*
 
+# Configuration de l'environnement pour PDI
+ENV PDI_DIR=/usr/local
+ENV LD_LIBRARY_PATH=/usr/local/lib
+ENV CPATH=/usr/local/include
+ENV PREFIX=/usr/local
 # 2. Installation de PDI (Build from source pour exclure MPI et garantir HDF5)
 # Nous clonons, configurons et installons PDI dans /usr/local
 WORKDIR /tmp/pdi-build
@@ -40,6 +56,9 @@ RUN git clone https://github.com/pdidev/pdi.git . && \
         -DBUILD_MPI=OFF \
         -DBUILD_DECL_HDF5_PLUGIN=ON \
         -DBUILD_SHARED_LIBS=ON \
+		-DBUILD_FORTRAN=OFF \
+		-DBUILD_HDF5_PARALLEL=OFF \
+		-DBUILD_NETCDF_PARALLEL=OFF \
         -DCMAKE_INSTALL_PREFIX=/usr/local \
         .. && \
     make -j$(nproc) && \
@@ -56,10 +75,7 @@ RUN julia -e 'import Pkg; Pkg.add(["HDF5", "Plots", "DataFrames"]); Pkg.precompi
 RUN groupadd -g ${GROUP_ID} ${USER_NAME} && \
     useradd -m -u ${USER_ID} -g ${USER_NAME} -s /bin/bash ${USER_NAME}
 
-# Configuration de l'environnement pour PDI
-ENV PDI_DIR=/usr/local
-ENV LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
-ENV CPATH=/usr/local/include:$CPATH
+
 
 # Passage à l'utilisateur
 USER ${USER_NAME}

+ 4 - 4
docker-compose.yml

@@ -6,10 +6,10 @@ services:
       args:
         # Ajustez ces IDs si vous n'êtes pas l'utilisateur 1000 sur Linux
         # (Tapez `id` dans votre terminal pour vérifier)
-        USER_ID: 1000
-        GROUP_ID: 1000
-        USER_NAME: engineer
-    image: codebuddy/julia-c-pdi:latest
+        USER_ID: 1001
+        GROUP_ID: 1001
+        USER_NAME: coder
+    image: jmbatto/juliabench:latest
     container_name: julia_c_lab
     
     # Montage du dossier courant (votre code) dans le conteneur