Maison >développement back-end >Tutoriel C#.Net >Explication détaillée sur l'exécution du site Web ASP.NET Core dans Docker

Explication détaillée sur l'exécution du site Web ASP.NET Core dans Docker

黄舟
黄舟original
2017-05-28 10:13:391568parcourir

Cet article présente principalement l'explication détaillée du site Web ASP.NET Core fonctionnant dans Docker, ce qui est d'une grande valeur pratique. Les amis qui en ont besoin peuvent le faire. référez-vous à lui

En tant que méthode de virtualisation de nouvelle génération, Docker sera certainement largement utilisé à l'avenir. La méthode de déploiement des machines virtuelles traditionnelles doit assurer la cohérence des dépendances de l'environnement de développement, de l'environnement de test, de l'environnement UAT et de la production. Environnement, qui nécessite beaucoup d'opérations. Ressources humaines dimensionnelles, grâce à Docker, nous pouvons déployer une fois et exécuter partout.

Cet article explique comment déployer un site Web ASP.NET Core pour l'exécuter dans Docker.

Liste des environnements logiciels

  1. CentOS 7.3.1611

  2. Docker 1.12.6

  3. .NET Core 1.1

InstallerDocker

$ #安装Docker
$ yum install docker
$ #启动docker服务
$ systemctl start docker.service
$ #配置开机启动
$ systemctl enable docker.service

Configurer l'accélérateur Docker

Pour des raisons bien connues, si vous souhaitez utiliser Docker en douceur, vous devez configurer l'accélérateur Docker, sinon vous aurez l'impression d'être revenu à l'ère de la connexion commutée Accès Internet.
J'utilise DaoCloud, dont on dit qu'il est gratuit en permanence. L'adresse d'inscription est : https://account.daocloud.io/signin.

Vous pouvez rapidement finaliser l'inscription en scannant avec WeChat.

Une fois l'enregistrement terminé, une adresse de script de configuration sera fournie :


$ #配置docker加速器
$ curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://xxxxxx.m.daocloud.io
$ #重启生效
$ systemctl restart docker

Obtenez l'image ASP.NET Core

$ docker pull microsoft/aspnetcore
$ #检查是否成功
$ docker images

Préparez le fichier de version du site Web ASP.NET Core

Vous pouvez vous référer à mon article précédent : Site Web ASP.NET Core Publiez sur le serveur Linux

Créez un fichier Docker

et placez-le dans le répertoire racine de le site Web. Le contenu du fichier est le suivant :

FROM docker.io/microsoft/aspnetcore
COPY ./publish
WORKDIR /publish  
EXPOSE 8080
CMD ["dotnet", "TestAspNetCoreWeb.dll"]

Image du package

$ #注意最后有个点。
$ docker build -t test-netcore:1.0 .

Démarrer le conteneur

$ docker run --name test-netcore -p 8080:8080 -d test-netcore:1.0
$ #检查容器是否启动成功,如果启动后没效果,试试docker run 不加-d,如果有报错有提示信息。
$ docker ps

Le site Web fonctionne avec succès.

Pièce jointe

Au cours du processus de configuration, j'ai rencontré deux situations où le conteneur n'a pas pu démarrer :

1. surveillance de l'utilisation IP, erreur "Erreur -99 Adresse EADDRNOTAVAIL non disponible"

2. Le site Web utilise localhost pour la surveillance, erreur "curl : (56) Échec de la réception : connexion réinitialisation. par peer »

Enfin, j'ai découvert que l'utilisation de http://*:8080 pour surveiller était un succès.

Si vous exécutez à nouveau docker run après un échec, vous serez invité à indiquer que le nom existe déjà. Vous pouvez utiliser docker rm -f [container name] pour supprimer le conteneur ou modifier son nom. .

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn