前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >在Linux(Centos7)上使用Docker运行.NetCore

在Linux(Centos7)上使用Docker运行.NetCore

作者头像
小世界的野孩子
发布2019-09-11 14:45:55
2.3K0
发布2019-09-11 14:45:55
举报

在上一篇中我们写了如何在windows中使用docker运行.netcore,既然我们了解了windows下的运行发布,我们也可以试试linux下使用docker运行.netcore项目,那么今天我们就一起看看如何在linux下使用docker运行.netcore项目吧

首先在linux环境下安装docker

1、卸载旧版本

代码语言:javascript
复制
sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-selinux \
                  docker-engine-selinux \

2、安装依赖

代码语言:javascript
复制
sudo yum install -y yum-utils device-mapper-persistent-data lvm2

3、添加储存库

代码语言:javascript
复制
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

4、安装docker-ce

代码语言:javascript
复制
sudo yum -y install docker-ce

5、启动docker

代码语言:javascript
复制
systemctl start docker

6、查看状态

代码语言:javascript
复制
systemctl status docker
或者也可以使用
docker info

7、使用docker加速(没有使用加速的话可能会出现等待超时的错误)(linux,windows,mac--https://www.daocloud.io/mirror)

代码语言:javascript
复制
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f1361db2.m.daocloud.io

8、重启docker

代码语言:javascript
复制
systemctl restart docker

使用Visual Studio创建一个.net core应用并且本地运行一下确保没有问题

然后我们发布到文件夹Linux版本

在这里我们需要修改一下发布文件下的dockerfile文件,这里和windows上运行的文件内容可能会有点点差异,我们并不需要太多的点缀。

在我们发布文件中是没有.csproj文件的并且发布之后文件路径也是需要修改的,我这里稍微调整了一下我的dockerfile文件

代码语言:javascript
复制
# 拉取基础镜像
FROM microsoft/dotnet:2.2-aspnetcore-runtime
#容器中系统的工作空间
WORKDIR /app
#拷贝当前文件夹下的文件到容器中系统的工作空间
COPY . /app
 
#设置Docker容器端口
EXPOSE 5002
#使用ENTRYPOINT ["dotnet"," project.dll"]
ENTRYPOINT ["dotnet", "DockerTest.dll"]

并且上传至服务器,然后我们在Linux服务器上进入刚创建的文件夹中

开始构建镜像

代码语言:javascript
复制
dokcer build -t demo .

查看镜像

代码语言:javascript
复制
docker images

运行容器

代码语言:javascript
复制
docker run --name=demo -p 5002:5002 -d demo

查看运行的容器

代码语言:javascript
复制
docker ps

如果没有发现刚运行的容器可以查看运行日志

代码语言:javascript
复制
docker logs demo

解决完问题之后我们就可以在浏览器输入ip+5002来检查下我们是否运行成功

代码语言:javascript
复制
Dokcerfile文件下的常用指令详解
代码语言:javascript
复制
FROM   文件中第一条非注释INSTRUCTION一定是FROM,意思是以某一个镜像为基础,首先会检查本地是否存在此镜像,如果本地存在就不会从仓库里面获取
WORKDIR  指定工作目录
EXPOSE     为构建的镜像设置监听端口
COPY    讲源文件复制到目标文件中去
RUN       用于在镜像容器中执行命令
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-04-13 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档