当前位置: 首页 > 编程笔记 >

ASP.NET Core 2.1 使用Docker运行的方法步骤

南宫松
2023-03-14
本文向大家介绍ASP.NET Core 2.1 使用Docker运行的方法步骤,包括了ASP.NET Core 2.1 使用Docker运行的方法步骤的使用技巧和注意事项,需要的朋友参考一下

1.新建一个 ASP.NET Core 2.1 项目

然后运行一下项目,确保我们刚刚建立的项目可以正常运行。

2.编写 Dockerfile

新建一个文本文件,命名为 Dockerfile

FROM microsoft/dotnet:2.1-aspnetcore-runtime
WORKDIR /app
COPY . .
EXPOSE 80
ENTRYPOINT ["dotnet", "AspNetCore.Docker.dll"]

这里我们需要用到官方的镜像:microsoft/dotnet:2.1-aspnetcore-runtime

如果要尝试更小的镜像,可以试试 microsoft/dotnet:2.1-aspnetcore-runtime-alpine ,这镜像使用了alpine 一款精简版极小的linux,但是随之而来的就是阉割了一些功能,实际使用的时候需要测试,比如国际化支持,它默认在这个镜像里面没有开启,需要配置环境变量来开启。

需要设置Dockerfile的如下属性,保证其能复制到发布目录:

3.构建Docker镜像

我们将镜像命名为 :aspnetcoredocker

进入到发布文件目录,执行命令便可打包镜像:

docker build -t aspnetcoredocker .

我们可以编写 发布+构建 的脚本。

Windows:

文件名:build.bat

@echo off

echo "Windows Docker build"

cd ../AspNetCore.Docker

dotnet publish -c Release -o ../publish

cd ../publish

echo "publish success"

docker build -t aspnetcoredocker .

文件名:Linux:

build.sh

#!/bin/bash

echo Linux Docker build

cd ../AspNetCore.Docker

dotnet publish -c Release -o ../publish

cd ../publish

echo publish success

docker build -t aspnetcoredocker .

文件夹结构如下图:

执行构建:

./build.sh

构建成功后可以通过 docker images 命令查询到我们构建的镜像:

若在linux下执行sh脚本时,遇到错误“-bash: ./build.sh: /bin/bash^M: bad interpreter: No such file or directory“,请通过vim/vi编辑sh脚本,按:建,输入 set ff=unix,然后回车、wq保存即可

4.运行镜像

通过命令运行

docker run --name=aspnetcoredocker -p 7777:80 -d aspnetcoredocker

--name:指定容器名称

-p:指定容器端口

-d:指定容器 后台运行

出现一长串字符串,便是表示运行成功:

我们也可以通过 docker ps 命令,查询我们正在运行的容器:

我们还可以通过 docker logs <容器名称或者id>来查看启动日志:

5.验证访问

我们可以通过 curl命令来直接访问我们容器启动的asp.net core 网站:

或者直接通过浏览器访问:

至此,我们通过Docker运行asp.net core 2.1应用程序就结束了。

6.资料

本文所用代码:https://github.com/stulzq/BlogDemos/tree/master/AspNetCore.Docker

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。

 类似资料:
  • 本文向大家介绍使用 docker-compose 运行 MySQL的方法,包括了使用 docker-compose 运行 MySQL的方法的使用技巧和注意事项,需要的朋友参考一下 目录结构 mysql 目录下的 data 为数据目录,mysql 的数据表、二进制日志文件就在这里。.env 文件包含了一些变量,这些变量可以在 docker-compose.yml 文件中通过 ${variable_n

  • 本文向大家介绍docker运行项目的方法,包括了docker运行项目的方法的使用技巧和注意事项,需要的朋友参考一下 1、进入存放自己项目war的目录 编辑Dockerfile文件 内容如下: 2、build自己的镜像 不出意外的会显示build镜像的步骤,最后一行为 最后的字符串是镜像id的一部分。 此时可以运行docker images查看自己的镜像信息 3、运行自己的docker容器 这里 -

  • 本文向大家介绍docker安装redis5.0.3的方法步骤,包括了docker安装redis5.0.3的方法步骤的使用技巧和注意事项,需要的朋友参考一下 一、拉取官方5.0.3镜像 下载完成 二、创建挂载目录 1、创建挂载文件夹 2、创建redis.conf 在/root/redis/conf目录中创建文件 redis.conf 显示目录 三、创建redis 容器 参数说明: -d 后台运行 -

  • 本文向大家介绍Docker安装MySQL8的方法步骤,包括了Docker安装MySQL8的方法步骤的使用技巧和注意事项,需要的朋友参考一下 一、下载镜像 docker Hub官网URL:https://hub.docker.com/_/mysql/ 下载最新版本:docker pull mysql 下载指定版本:docker pull mysql:verison(8.0.11,8.0,8) 二、启

  • 本文向大家介绍如何使用docker部署前端应用的方法步骤,包括了如何使用docker部署前端应用的方法步骤的使用技巧和注意事项,需要的朋友参考一下 docker 变得越来越流行,它可以轻便灵活地隔离环境,进行扩容,方便运维管理。对开发者也更方便开发,测试与部署。 最重要的是, 当你面对一个陌生的项目,你可以照着 Dockerfile,甚至不看文档(文档也不一定全,全也不一定对)就可以很快让它在本地

  • 我甚至才知道,即使是Docker容器也是由IP组成的。为什么会这样?有谁能帮助我理解容器是如何通过IP访问的吗? 我已经尝试了上面的JSON和ipconfig映像中所有可用的IP,但都不起作用。