在上一篇文章中我们介绍了.net core 项目的创建,在本篇文章中我们将使用容器部署我们的.net core 项目
步骤
1. | 创建CentOS服务器 |
2. | 安装Docker |
3. | 在Linux上创建sqlserver容器 |
4. | 发布asp.net core 项目 |
5. | 在Linux创建asp.net core容器 |
1.创建CentOS服务器
1.1 在腾讯云中购买一台CentOS(2核+4GB),我们可以选择按量付费节省费用
1.2 在防火墙中开放1433(sqlserver),80(web)端口
2.安装Docker
2.1 安装docker
yum install -y docker-ce
2.2 启动docker
yum install -y docker-ce
2.3 验证是否安装成功
docker --version
3.在Linux上创建sqlserver容器
3.1 拉取sqlserver镜像
docker pull mcr.microsoft.com/mssql/server:2017-latest
3.2 创建sqlserver容器
docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=xiaoma20230621." -p 1433:1433 --name sqlserver2017 -d mcr.microsoft.com/mssql/server:2017-latest
红色部分为我们的sqlserver密码,是不是很方便2条命令就可以构建一个sqlserver,用docker ps 可以查看我们的容器是否创建成功
3.3 测试sqlserver
打开sqlserver manger studio 用我们刚刚红色的密码去登陆(记得服务器要开发1433单口)
4.发布asp.net core 项目
4.1 右键解决方案,选择文件夹发布,点击完成将生成一个publish文件夹
4.2 打开Liunx服务器,选择文件夹上传,将我们的publish文件夹上传到服务器:/data/sftp/publish
5.在Linux创建asp.net core容器
5.1 拉取asp.net core 镜像
docker pull mcr.microsoft.com/dotnet/aspnet:6.0
5.2创建asp.net core 容器
docker run -di --name=phonecrm -v /data/sftp/publish/:/app/phonecrm -p 80:80 a138def764dc
内容 | 说明 |
--name=phonecrm | 创建后的容器名称 |
/data/sftp/publish/ | 源程序路径 |
/app/phonecrm | 容器程序路径 |
-p 80:80 | 本机端口和容器端口 |
a138def764dc | image id |
5.3 查看容器是否创建成功:
5.4 进入容器并启动项目
5.4.1 进入容器
5.4.2 启动项目
dotnet PhoneCRM.dll
5.5 测试项目
复制我们公网的IP,查看项目是否部署成功