Docker 部署 .net Core 3.1 (Windows下)

本文详细介绍了如何在Windows上安装Docker,配置.NET Core 3.1项目,发布并打包成镜像,以及通过Dockerfile管理和运行容器。涉及了创建镜像、端口映射和容器操作的基本步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Docker 部署 .net Core 3.1

1. 安装Docker

链接: windows.
下载安装包后,点点点,安装就好了
参考大佬文章.
安装后打开出现问题可以参考

2. 安装后验证

打开cmd窗口,执行命令

docker version

在这里插入图片描述

常用命令介绍

列出所有镜像
docker images
删除镜像(删除容器后才能删除镜像)
docker rmi 镜像ID

由镜像生成的 容器
列出运行中的容器
docker ps
列出所有容器
docker ps -a
启动容器
docker start 容器ID
停止容器
docker stop 容器ID
删除容器(先停止才能删除)
docker rm 容器ID

2. 新增项目,配置端口,发布

我这边直接创建 ASP.NET Core Web API项目
配置端口如下图
在这里插入图片描述

public class Program
    {
        public static void Main(string[] args)
        {
            CreateHostBuilder(args).Build().Run();
        }

        public static IHostBuilder CreateHostBuilder(string[] args) =>
            Host.CreateDefaultBuilder(args)
                .ConfigureWebHostDefaults(webBuilder =>
                {
                    webBuilder.UseUrls("http://*:5000").UseStartup<Startup>();
                });
    }

发布项目
在这里插入图片描述

在这里插入图片描述

3. 配置Dockerfile 文件

打开发布的文件夹

创建文件.dockerignore可以配置一些要忽略的文件/文件夹

创建文件Dockerfile(没有后缀)内容如下

#父镜像,或者说是运行环境
FROM mcr.microsoft.com/dotnet/aspnet:3.1
#设置容器工作目录
WORKDIR /DockerDemo
#把当前目录的所有文件copy到工作目录中
COPY . /DockerDemo
#暴露一个端口让外部可以访问 要同上面设置的端口
EXPOSE 5000
#容器入口命令,即容器启动时执行dotnet DockerDemo.dll命令
ENTRYPOINT ["dotnet", "DockerTest01.dll"]

5. 创建镜像

docker build -t 【名字】:【版本号】 【路径,.为当前】

打开cmd窗口,执行命令,生成镜像

docker build -t dockerdemo:v1.0 D:\publish_test

在这里插入图片描述

执行命令docker images列出所有镜像,可以看到
在这里插入图片描述

6. 生成&运行容器

执行命令

docker run -d -p 13425:5000 dockerdemo:v1.0

-d 表示后台运行
-p 13425:5000表示服务器的13425端口映射到容器的5000端口

在这里插入图片描述

本地打开浏览器,查看是否生效
http://localhost:13425/weatherforecast

参考自

https://blog.youkuaiyun.com/dupeng0811/article/details/89877561
https://www.cnblogs.com/songl/p/11128012.html
https://www.ruanyifeng.com/blog/2018/02/docker-tutorial.html

Docker 部署 Redis

参考

  1. 下载镜像:docker pull redis
  2. 直接发布镜像到容器 docker run --name redis2 -p 6380:6380 -d redis
  3. 指定配置发布镜像到容器 docker run -v /d/redis.conf:/usr/local/etc/redis.conf --name redis3 -p 6380:6380 -d redis redis-server /usr/local/etc/redis.conf

-v /d/redis.conf:/usr/local/etc/redis.conf
本地文件/d/redis.conf 拷贝到容器内的/usr/local/etc/redis.conf
redis.conf下载地址https://raw.githubusercontent.com/antirez/redis/5.0/redis.conf
bind的地址从127.0.0.1改为0.0.0.0,以便让其它地址可以连接
设置密码 requirepass 密码

  1. 运行Redis命令行管理工具 docker exec -it redis2 redis-cli 可选连接密码后面追加-a 密码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值