IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Delphi Discussion :

Delphi 10.4 avec docker version nanoserver


Sujet :

Delphi

  1. #1
    Membre à l'essai
    Homme Profil pro
    Fondateur MIV-SOFT
    Inscrit en
    Décembre 2005
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Fondateur MIV-SOFT
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2005
    Messages : 28
    Points : 20
    Points
    20
    Par défaut Delphi 10.4 avec docker version nanoserver
    Bonjour,

    Nous avons testé avec succès des appli delphi 10.4.2 sous docker en version intermédiaire "windows servercore" ça marche avec un peu de bricolage de dll à charger manuellement en fonction des dépendances contenues dans les appli.


    Mais, pourquoi une simple application minimaliste de type console écrit en delphi 10.4.2 contenant une simple instruction de contrôle (sans GUI), ne fonctionne pas sur un docker NANOSERVER, rien nada ?

    Bien sur compilé en 64bit qui est le seul support de cette plateforme.

    Y a t il des dépendances ou réglage de l'EDI connus pour nanoserver ?

    Y a t il un package ou une image nanoserver 2019 avec des addon déjà intégré pour delphi 64 ?

    Y a t il des expériences réelles sur cette plateforme NANO?

    L'idée est d'utiliser un maximum les ressources d'un gros serveur HOST avec une multitude de mini virtualisation plus light qui en général ne travaille pas en même moment (application PAAS ou devops de test) et la version NANO pour ça semble assez prometteuse.

  2. #2
    Membre expert
    Avatar de pprem
    Homme Profil pro
    MVP Embarcadero - formateur&développeur Delphi, PHP et JS
    Inscrit en
    Juin 2013
    Messages
    1 876
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : MVP Embarcadero - formateur&développeur Delphi, PHP et JS
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 876
    Points : 3 611
    Points
    3 611
    Par défaut
    Bonjour

    Bonne question. Rien vu passer sur le sujet.

    Nanoserver étant une sous partie très allégée de Windows Server il y a peut-être des API de base de l'OS qui empêchent le fonctionnement d'un simple programme en ligne de commande (même si je trouve ça très louche).

    Y a-t-il des erreurs quelques part lors du lancement du programme ?

    Est-ce une version de débogage de l'exe ou une version release ?

    PAServer se lance-t-il dessus ?

    Le lancement en débogage passe-t-il depuis l'IDE ?

  3. #3
    Expert éminent sénior
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Points : 28 430
    Points
    28 430
    Par défaut
    c'est quoi "une simple instruction de contrôle" ? Est-ce que WriteLn('Hello World') fonctionne ?
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  4. #4
    Membre expert
    Avatar de pprem
    Homme Profil pro
    MVP Embarcadero - formateur&développeur Delphi, PHP et JS
    Inscrit en
    Juin 2013
    Messages
    1 876
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : MVP Embarcadero - formateur&développeur Delphi, PHP et JS
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 876
    Points : 3 611
    Points
    3 611
    Par défaut
    J'ai posé la question à nos camarades MVP. Marco Gueuze confirme qu'il n'a pas non plus réussi à l'utiliser et qu'il faut passer par MCR : http://mcr.microsoft.com/windows/servercore:20H2

    Plus qu'à faire un tour sur la session d'introduction de Marco Cantu à la DelphiCon 2021 ( https://delphicon.embarcadero.com/ta...t-with-delphi/ ) pour poser la question et/ou soumettre une demande de nouvelle fonctionnalité "prise en charge de la plate-forme Microsoft Nanoserver" sur https://quality.embarcadero.com

  5. #5
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 455
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 455
    Points : 24 867
    Points
    24 867
    Par défaut
    Surtout que si cela se trouve pas besoin d'avoir un code particulier, un uses contenant des liaisons statiques avec des DLL Winapi absente

    Même PowerShell qui est le langage de script de MS est limité rien que lire "Adaptateurs de type ADSI, ADO et WMI"
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  6. #6
    Membre à l'essai
    Homme Profil pro
    Fondateur MIV-SOFT
    Inscrit en
    Décembre 2005
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Fondateur MIV-SOFT
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2005
    Messages : 28
    Points : 20
    Points
    20
    Par défaut
    Bonjour A tous

    Pas d'erreur nul part , même dans leur log

    Idem en debug ou release, et je comprends que le mode debug pourrait introduire un certain nombre de dépendance pour les traces

    Les exemples trouvés enr PAserver et Fb sont en compilation sous linux, donc pas notre contexte

    Pour répondre à Paul, oui un simple writeln('hello') ne fonctionne pas ! par contre je vois quand même une différence avec ('Hello world')

    Je pense qu'il y a une notion de ROLE sur namo (IIS, fichier, etc.) qui devrait être chargé pour avoir le minima utile pour faire tourner notre exe, mais pour un simple writeln !

    https://docs.microsoft.com/fr-fr/win...oy-nano-server

    Pour le servercore, cela fonctionne dans notre cas avec un peu bricolage de dll manquante, mais Il est quand même lourd (en Go/instance) et le nombre d'instance sur un serveur standard hyper V est limité à 2 containers !! ou alors il faut passer à une licence Datacenter ce qui n'est pas le même tarif du tout.
    De plus les hébergeurs (comme OVH ou autre) fournissent des VPS en instance public uniquement en OS standard, ou alors passer en serveur dédié pour avoir un Datacenter perso dessus ==> surcoût de surcoût.

    Alors que ce n'est pas le cas en nanoserver, on pourrait en théorie monter des centaines de containers sur un serveur standard.
    Imaginez comment, ce couple nano/delph pourrait faire des étincelles dans le monde du cloud Paas et du devops.

    C'est quand même assez étonnant de voir ce min OS dispo avec un langage multi plateforme comme delphi donc normalement très peu gourmand en dépendance ne pas fonctionner (surtout qu'en on fait rien).


    Merci pour votre aide.

  7. #7
    Membre expert
    Avatar de pprem
    Homme Profil pro
    MVP Embarcadero - formateur&développeur Delphi, PHP et JS
    Inscrit en
    Juin 2013
    Messages
    1 876
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : MVP Embarcadero - formateur&développeur Delphi, PHP et JS
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 876
    Points : 3 611
    Points
    3 611
    Par défaut
    PAServer est disponible en version Mac, Linux et Windows dans l'arborescence d'installation de RAD Studio / Delphi / C++Builder.

    Pas besoin de le chercher sur Internet pour avoir la bonne version compatible avec la version de l'IDE.

  8. #8
    Membre à l'essai
    Homme Profil pro
    Fondateur MIV-SOFT
    Inscrit en
    Décembre 2005
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Fondateur MIV-SOFT
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2005
    Messages : 28
    Points : 20
    Points
    20
    Par défaut
    Bonsoir,

    en quoi PaServer pourrait m'aider par rapport à nanoserver si une simple instruction ne fonctionne pas ?

  9. #9
    Membre à l'essai
    Homme Profil pro
    Fondateur MIV-SOFT
    Inscrit en
    Décembre 2005
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Fondateur MIV-SOFT
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2005
    Messages : 28
    Points : 20
    Points
    20
    Par défaut
    Je rappelle que je n'utilise pas la techno PASERVER et pas l'intention de l'utiliser rien que pour les problèmes de licence de cette techno qui n'est pas libre de distribution !! ce qui est assez étonnant et impossible à gérer pour nous et nos clients , drôle de positionnement marketing pour un langage qui n'est pas donné.

    Les programmes sont existants, très peu gourmands en ressource dans un maillage EDGE réparti sur plusieurs instances dialoguant déjà en techno web services (sous INDYSOAP) qui ont fait leur preuve complété avec un portail d'affichage INTRAWEB qui forme une solution complète PAAS cloisonnée par client d’où le besoin de beaucoup de container.

    Donc, quand je vois qu'il y a possibilité d'avoir d'un serveur web IIS sur nanoserver, pourquoi pas nous ?

    Je suis toujours preneur de pistes ou d'expériences (DELPHI/NANOSERVER container), même en prestation, merci d'avance

  10. #10
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 455
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 455
    Points : 24 867
    Points
    24 867
    Par défaut
    Je pense que PAServer c'était pour déboguer depuis un Windows pro classique un programme sur un NanoServer, au démarrage tu pourrais peut-être savoir si il y a une DLL manquante par exemple
    Tu pense au déploiment, tu sembles totalement oublier la maintenance et le besoin un jour de débogguer un programme.

    Et si PAServer ne démarre pas, tu peux surement pour le moment oublier cette idée avant une annonce de support officiel.

    Sinon le cloisement entre client peut se faire autrement que par des containers ... cela peut être au niveau applicatif <-> droit <-> SGBD ... comme je l'ai pratiqué dès 2006.
    Maintenant, on dirait la virtualisation rend les efforts d'architecture logiciel quasi-nul préférant se soulager sur une architecture technique (hardware virtualisé)


    Ou je travaille, les développeurs utilisent une seule instance de Windows qui contient peut-être 20-30 instance de Servers (en réalité un groupe de serveur au but spécialisé Data/Print/Cron/...) développés en Delphi lancé sur des ports différents (une fenêtre de port, chaque server spécialisé à son port), et chaque développeur à son environnement Linux virtualisé qui contient Apache, PHPStorm ... connecté sur l'instance Servers dédiés à leur besoin (Data/Print/Cron/...), chacun ayant aussi une DB dédiée (idem en fait DB commune mais 4 Schémas dédiés car la DATA séparé de la CONF par exemple et séparé du REFERENTIEL) pour travailler sans impacter le voisin (en dehors des performances sur tout le monde s'amuse à lancer des exports de base)

    Je suis l'un des rares développeurs à n'avoir pas cela, vu que je m'occupe des Servers, je suis à fond sur la CS du Data en ce moment, justement, avec des outils de tests qui ne requiert pas la partie Apache.
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  11. #11
    Membre à l'essai
    Homme Profil pro
    Fondateur MIV-SOFT
    Inscrit en
    Décembre 2005
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Fondateur MIV-SOFT
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2005
    Messages : 28
    Points : 20
    Points
    20
    Par défaut
    Nous avons déjà pratiqué de cette manière avec du multi instance sur un même serveur et un partage de port pour chacun sur les serveur d'application, mais c'est pas étanche du tout, il y a quand même un serveur commun de base de données FB, donc très délicat, ça peut marcher pour les serveur de dev.
    Mais pour de la prod inter client avec des configs particulières, je suis beaucoup moins fan.

    Dans mon cas c'est du cloud PAAS isolé/client que vends de façon à cloisonner au max et éviter les perturbations inter client, ce que je fais aujourd'hui avec du VPS mais couteux en montage et entretien.


    Donc le nanoserver est vraiement pour moi une solution qui pourrait m'aider,
    Nous allons continuer malgré ce qui dit en montant des rôles, merci pour votre aide

Discussions similaires

  1. Réponses: 4
    Dernier message: 21/12/2009, 17h16
  2. Réponses: 5
    Dernier message: 14/08/2009, 09h24
  3. Delphi et MySQL avec ADO
    Par sylviefrfr dans le forum Bases de données
    Réponses: 8
    Dernier message: 05/12/2007, 14h15
  4. [version] Requete Update avec différentes versions de mySQL
    Par regbegpower dans le forum Requêtes
    Réponses: 2
    Dernier message: 26/01/2004, 17h19
  5. [Kylix] Pb avec la version C++
    Par johjoh dans le forum EDI
    Réponses: 10
    Dernier message: 27/01/2003, 12h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo