+ Répondre à la discussion Actualité déjà publiée
  1. #1
    Responsable .NET

    Avatar de Hinault Romaric
    Homme Profil pro
    Consultant
    Inscrit en
    janvier 2007
    Messages
    4 478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

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

    Informations forums :
    Inscription : janvier 2007
    Messages : 4 478
    Points : 249 598
    Points
    249 598
    Billets dans le blog
    27

    Par défaut [Tutoriel]Création et déploiement d'une application ASP.NET Core sous Linux

    Bonjour,

    J’ouvre cette discussion pour annoncer la publication d’un nouveau tutoriel. Ce dernier couvre la création et la publication d’une application ASP.NET Core sous Linux avec Visual Studio Code, le générateur Yeoman, Entity Framework Core, Nginx et Docker.

    Pour consulter l'article au complet, c'est par ici : http://rdonfack.developpez.com/tutor...re-sous-linux/

    Bonne lecture et n’hésitez pas à commenter ce dernier.

    Retrouvez les meilleurs cours et tutoriels pour apprendre la programmation DotNet
    Vous souhaitez participer aux rubriques .NET ? Contactez-moi

    Si déboguer est l’art de corriger les bugs, alors programmer est l’art d’en faire
    Mon blog, Mes articles, Me suivre sur Twitter
    En posant correctement votre problème, on trouve la moitié de la solution

  2. #2
    Membre du Club
    Homme Profil pro
    ingénieur IT
    Inscrit en
    août 2014
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : ingénieur IT

    Informations forums :
    Inscription : août 2014
    Messages : 18
    Points : 49
    Points
    49

    Par défaut

    Merci pour ce tutoriel, ça fait plaisir

    En effet quand on regarde les tuto sur la documentation de Microsoft, on voit que la majoritée des exemples se base sur Visual Studio ( et non Visual Studio Code) et son générateur de code ce qui fait qu'ils sont durs à suivre quand on n'utilise pas cet IDE.
    Pour moi qui préfère Visual Studio Code (et qui suis sur Linux en plus) c'est super d'avoir un tutoriel qui n'est pas basé sur un éditeur en particulier.

    Cependant j'ai remarqué certains points où j'ai eu du mal.

    Déjà j'ai pas réussi à utiliser la commande "yo aspnet:MvcController" pour générer automatiquement un contrôleur ou une vue.
    J'ai pourtant bien installé le générateur aspnet avec la commande "npm install -g generator-aspnet" et j'ai réussi à générer un projet aspnet comme expliqué sur le tutoriel.
    J'ai cherché sur le net mais j'ai pas trouvé de solution, sais-tu comment faire pour installer ces générateurs ? (J'ai testé sur Ubuntu 16.04 avec dotnet core version 1.0.1 et yo version 1.8.5)

    Sinon, pour l'installation de NodeJS, je pense qu'il faut mieux installer la version 6 (ou 7) plutôt que la version 4 car c'est celle là qui est actuellement supporté à long terme (plus d'info https://github.com/nodejs/LTS#lts-schedule1)

    Ensuite, avec la version 1.0.1 de dotnet core, il faut en effet utiliser le format .csproj pour la gestion des dépendances par contre le fichier .csproj qui est montré est incomplet. Il manque notamment les références à la bibliothèque CommandLine (quand on modifie le fichier Program.cs dans la partie "XI-B. Configuration de Nginx" et il manque aussi la référence à l'outil Microsoft.EntityFrameworkCore.Tools.DotNet pour pouvoir lancer la commande "dotnet ef" comme illustré dans la partie "VI. Ajout d'Entity Framework au projet".
    Voici mon fichier .csproj (PS: je ne suis pas sûr que c'est comme ça qu'il faut faire pour la partie où j'inclus le fichier hosting.json)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    <Project ToolsVersion="15.0" Sdk="Microsoft.NET.Sdk.Web">
     
      <PropertyGroup>
        <TargetFramework>netcoreapp1.0</TargetFramework>
     
      </PropertyGroup>
     
      <ItemGroup>
        <PackageReference Include="Microsoft.AspNetCore" Version="1.0.4" />
        <PackageReference Include="Microsoft.AspNetCore.Mvc" Version="1.0.3" />
        <PackageReference Include="Microsoft.AspNetCore.StaticFiles" Version="1.0.2" />
        <PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="1.0.2" />
        <PackageReference Include="Microsoft.VisualStudio.Web.BrowserLink" Version="1.0.1" />
        <PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="1.0.3" PrivateAssets="All" />
        <PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="1.0.3" />
        <PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite.Design" Version="1.0.3" PrivateAssets="All" />
        <PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="1.0.0-msbuild3-final" PrivateAssets="All" />
        <PackageReference Include="Microsoft.Extensions.Configuration.CommandLine" Version="1.1.1" />
     
      </ItemGroup>
     
      <ItemGroup>
        <DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="1.0.0-msbuild3-final" />
        <DotNetCliToolReference Include="Microsoft.DotNet.Watcher.Tools" Version="1.0.0" />
     
      </ItemGroup>
     
      <ItemGroup>
        <None Include="hosting.json" CopyToPublishDirectory="Always" />
     
      </ItemGroup>
     
     
    </Project>
    Vous remarquerez que j'ai mis aussi une référence à la commande Microsoft.DotNet.Watcher.Tools, c'est pour moi une commande très utile car elle permet de lancer une seule fois la commande "dotnet run" et à chaque fois qu'on change nos fichiers, l'application est automatiquement mise à jour de façon transparente et on peut voir ses changements directement dans son navigateur (un peu comme avec des langages tel que php).
    Pour l'utiliser c'est simple, il suffit de lancer "dotnet watch run" dans un terminal (on peut directement utiliser le terminal intégré dans visual studio code en allant dans le menu affichage > terminal intégré). (Plus sur "dotnet watch" d'info ici https://docs.microsoft.com/en-us/asp...s/dotnet-watch)


    Enfin, est-ce que c'est normal que dans le fichier /etc/nginx/sites-available/default le port soit 5001, que dans le fichier hosting.json le port soit 5050 et que dans le fichier Dockerfile le port soit 5100, ça ne devrait pas être toujours le même port ?

    De plus y a t'il pas un erreur sur le chemin vers le fichier de configuration de supervisor, ce serait pas /etc/supervisor/conf.d/ au lieu de src/supervisor/conf.d/ ?

Discussions similaires

  1. Réponses: 3
    Dernier message: 30/05/2014, 20h22
  2. Réponses: 0
    Dernier message: 24/11/2013, 08h30
  3. Déploiement d'une application asp.net
    Par javalhoussain dans le forum ASP.NET
    Réponses: 9
    Dernier message: 27/07/2011, 13h07

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