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
CentOS 7.3.1611
Docker 1.12.6
.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
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!