分享好友 行情首页 行情分类 切换频道
coreelec docker插件依赖库
2024-12-26 22:51  浏览:72


本文主要介绍下运用docker虚拟技术打包Asp.net core应用。 Docker作为一个开源的应用容器引擎,近几年得到广泛的应用,使用Docker我们可以轻松实现应用的持续集成部署,一次打包,到处运行。

开篇借用百科上对docker的介绍。

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

方便大家学习:

http://www.docker.org.cn/(中文站) 

https://www.docker.com/(英文站)

docker镜像站:https://hub.docker.com/

【搭建环境】

系统:CentOS 7.0    容器:Docker 1.12.6          .Net Core版本: .NET Core 1.1

工具:putty、winScp

 

一、首先,我们先介绍下关于docker容器的安装。

直接用黄狗安装工具安装docker。



 

安装并成功启动docker服务后,可以通过以下命令查看docker版本信息


  

docker客户端、服务端版本信息都展示出来了。

二、安装Docker加速器。

 我目前使用的阿里开发者提供的docker加速服务。

有阿里云账号直接登录,https://dev.aliyun.com/search.html

如何使用Docker加速器

针对Docker客户端版本大于1.10的用户

您可以通过修改daemon配置文件来使用加速器:





为什么要安装Docker加速器?

摘自网友的话:众所周知的原因,要想流畅地使用Docker,需要配置Docker加速器,否则你会觉得回到了拨号上网的时代 。

三、发布Asp.Net Core程序。

 我这里是新建了也给Asp.Net Core web程序。

红色圈住部分,是后来手动添加进去的,dockerfile是你的应用部署到docker上所必须的配置信息,只是个不带扩展名的纯文本文件而已。hosting.json需要是配置服务启动时,监听信息。使用配置文件,需要手动修改Program.cs中的入口程序。





完成以上操作后,我们发布这个demo程序,解决方案,右键发布。

发布成功后,默认在bin/release/publishOutPut文件夹下。

然后,我把publishOutPut重命名为publish后,通过WinScp工具把文件传到root/docker/下。

另外,我们在网站根目录下,创建的Dockerfile文件,排上用场了,我们编辑修改文件。



FROM microsoft/aspnetcore:1.1 COPY . /publish WORKDIR /publish EXPOSE 80 CMD ["dotnet", "demo.dll"]



copy requires at least one argument这样的错误。

 

四、打包镜像

首先,我们进入/docker/publish目录

执行以下命令:



docker build -t demo-netcore .



  

意思是生成一个名为demo-netcore的镜像。(注意:最后空格后面有一个.)。

这个命令会,根据当前目录下dockerfile配置文件,进行打包。



[root@localhost publish]# docker build -t demo-netcore . Sending build context to Docker daemon 17.84 MB Step 1 : FROM microsoft/aspnetcore:1.1 ---> 983c2fe9cbef Step 2 : COPY . /publish ---> ae9533f162da Removing intermediate container d8bdd1cb7061 Step 3 : WORKDIR /publish ---> Running in 06a5fbef40ea ---> c63de53ebe20 Removing intermediate container 06a5fbef40ea Step 4 : EXPOSE 80 ---> Running in 8d0eaa657905 ---> 228e30d1bf74 Removing intermediate container 8d0eaa657905 Step 5 : EXPOSE 8080 ---> Running in a38fd6c59d4a ---> ab126ceac6ae Removing intermediate container a38fd6c59d4a Step 6 : CMD dotnet demo.dll ---> Running in 7dc71cdf0f87 ---> 96ef55dd9fc9 Removing intermediate container 7dc71cdf0f87 Successfully built 96ef55dd9fc9


coreelec docker插件依赖库


打包成功。

接下来,看看我们打包好的镜像。



[root@localhost publish]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE demo-netcore latest 96ef55dd9fc9 About a minute ago 322.8 MB docker.io/microsoft/aspnetcore 1.1 983c2fe9cbef 23 hours ago 305.1 MB [root@localhost publish]#



因为,刚打包的镜像demo-netcore是基于docker.io/microsoft/aspnetcore镜像的,所以在打包demo-netcore的过程中,会优先从镜像库中拉取docker.io/microsoft/aspnetcore镜像。至此,我们的第一个docker镜像就打包成功了。接下来,在容器中运行镜像。

五、运行docker容器



docker run --name demo -p 8080:80 demo-netcore:late



其中,demo是制定容器的名称,-p是进行宿主和容器之间端口的映射,(-p 宿主端口:容器端口),

 执行完以上命令后,正常情况下,会出现如下内容:



Hosting environment: Production Content root path: /publish Now listening on: http://+:80 Application started. Press Ctrl+C to shut down.



  这表明,你的asp.net core程序已经成功在docker容器中运行,监听端口为80。这个80指的是容器的端口,以上信息都是在容器中执行的结果输出。它会提示,按Ctrl+C终止当前应用程序。如果在执行docker run的时候,加上 -d命令,这样容器就会一直运行,即使关掉终端窗口。于是,我们想让docker程序一直运行,以上命令可以修改为:





  检验docker容器是否运行成功,执行如下命令:


以上信息可以看到,容器ID,容器名称,命令,镜像名称,

由于,我再dockerfier文件中,配置宿主的端口为8080,那么我们访问容器中的asp.net core程序时,需要通过8080端口访问,完成以上步骤,接下来让我们看下结果吧!浏览器打开http://localhost:8080或者执行



wget http://localhost:8080


  

第一个asp.net core docker应用运行起来了!

以下,是在本次操作中,常用的几个docker命令。

 



#生成镜像 docker build -t demo-netcore . #运行容器 docker run --name demo -p 8080:80 demo-netcore:latest #删除所有容器进程 docker rm $(docker ps -a -q) #删除一个镜像 docker rmi 镜像ID #查看所有镜像 docker images


    以上就是本篇文章【coreelec docker插件依赖库】的全部内容了,欢迎阅览 ! 文章地址:http://w.yusign.com/quote/6895.html 
     行业      资讯      企业新闻      行情      企业黄页      同类资讯      网站地图      返回首页 述古往 http://w.yusign.com/mobile/ , 查看更多   
最新新闻
18款手机无线充电器测评!涉及华为、苹果、小米、vivo等品牌手机无线充电器「18款手机无线充电器测评!涉及华为、苹果、小米、vivo等品牌」
近年来手机无线充电器凭借其充电的便捷性获得了广大消费者的青睐那么市面上的无线充电器性能、质量等情况如何?近日上海市消保委
2024年高考艺考成绩什么时候出来,2024年艺考有哪些变化
今天小编为大家分享关于高考特长生、艺术特长生、体育特长生、舞蹈特长生等招生简章和录取分数线的相关文章!浙江省2024年艺考政
2024电信宽带套餐介绍表电信手机套餐「2024电信宽带套餐介绍表」
2024电信宽带套餐介绍表:多种选择,满足您的网络需求随着互联网的普及,宽带已经成为人们生活中不可或缺的一部分。为了满足广大
1、OPPO Find X7 Ultra手机拍视频「1、OPPO Find X7 Ultra」
随着科技的发展,智能手机已经成为了人们日常生活中不可或缺的一部分。手机摄像头的性能也在不断提升,越来越多的人开始使用手机
2024小米红米手机在售机型梳理表,小米手机挑选全攻略!小米手机4「2024小米红米手机在售机型梳理表,小米手机挑选全攻略!」
小米手机,一直有着丰富的产品线。加之,子品牌红米手机机型的不断增加,让小米系手机涵盖了从入门级到高端旗舰的各个细分市场。
130亿美元债务悬顶! 美银、大摩等投行成马斯克推特收购案最惨“背锅侠”
智通财经APP获悉,埃隆·马斯克以高达440亿美元对推特公司的收购案,正成为全球金融危机以来金融机构面临的最糟糕的收购交易之一
12月手机CPU天梯图:全面评估最新处理器,助你选择最佳手机性能!手机cpu性能天梯图「12月手机CPU天梯图:全面评估最新处理器,助你选择最佳手机性能!」
简介:大家好,今天我要给大家介绍的是12月手机CPU天梯图。作为一个手机迷,我深知选择一款性能强劲的手机有多么重要。因此,我
1000元以下手机挑选推荐攻略手机选购「1000元以下手机挑选推荐攻略」
说句实在话,如果大家仅仅是想要购买备用机或者是老人机的,其实购买百元机完全是够用的,因为很多百元机都拥有着续航能力好、护
(世界十大最贵奢侈品手机)世界上最贵的十款手机 最土豪的奢侈品手机排行榜世界上最贵的手机「(世界十大最贵奢侈品手机)世界上最贵的十款手机 最土豪的奢侈品手机排行榜」
(世界十大最贵奢侈品手机)世界上最贵的十款手机 最土豪的奢侈品手机排行榜,世界十大奢侈品手机有哪些?手机虽然以实用为主,但
本企业新闻
推荐企业新闻
发表评论
0评