澳门新萄京官方网站-www.8455.com-澳门新萄京赌场网址

什么在centos操作系统上宣告,Docker的连带操作

2019-12-01 作者:www.8455.com   |   浏览(128)

环境:
操作系统: centos 7
.net core: 2.1.101

  1. 安装 .net core到centos7

  2. 安装nginx        

环境:Centos 7

参考: 

一.安装Centos虚拟机

官网的亲自去做地址:

  配置代理: vim /opt/nginx/conf/nginx.conf

业已下载安装.NET Core 1.1

局地docker常用命令:

进度大致……

率先,在windows 下的VS 2017新建四个asp.net core web项目,然后大家能够筛选两种方法发表网址,三个是采用VS 然后右键揭橥,一个是利用dotnet publish命令。大家将扭转的公文上传出服务器上:
图片 1

什么在centos操作系统上宣告,Docker的连带操作。  

Microsoft .NET Core Shared Framework Host

  Version  : 1.1.0
  Build    : 928f77c4bc3f49d892459992fb6e1d5542cb5e86

Usage: dotnet [common-options] [[options] path-to-application]

docker images 查看镜像列表

 

不过有一个主题素材,小编的.net core测验项目是在VS 2017下写就的,而vs下的.net core正视dll 都是一直动用nuget获取微软官方最新的.net core版本及其信赖项的。
而作者辈在centos服务器上安装dotnet core SDK的时候就反常了,因为日常那个时候大家都以钦点了dotnet core的本子,况且貌似都不是新型版的,由此,此时就能够有标题了,风姿洒脱旦运行测量检验就能够报错:
图片 2

 server {
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

         location / {
                proxy_pass http://127.0.0.1:5000;
                proxy_set_header Connection "";
                proxy_http_version 1.1;
        }
}

 

docker ps 查看运维中的容器  docker ps -a 查询全部容器,包蕴不在运维状态的

二.安装.Net Core环境

怎么撤除?那就下载最新版本的dotnet core呗,我们能够在我们揭橥成功的文书之中找到**deps.json文件查看大家项目信任项dll的版本号

  

问题:

docker rm $(docker ps -a -q卡塔尔国 删除全部不在运长势况的器皿

本尘间接登陆.net core官方网址,安装官方网址提醒的通令依次敲下去就能够了,

 

因此VS二〇一五 update3 创造的品类,暗中认可是NetcoreApp,Version1.0。公布release后,拷贝到linux。cd到程序目录,运行“dotnet  myapp.dll",报:

docker stop 容器id 结束三个器皿

加多.net 产物流入

什么在centos操作系统上宣告,Docker的连带操作。  启动nginx: /opt/nginx/sbin/nginx

[root@master PublishOutput]# dotnet ConsoleApp1.dll
The specified framework 'Microsoft.NETCore.App', version '1.0.1' was not found.
  - Check application dependencies and target a framework version installed at:
      /opt/dotnet/shared/Microsoft.NETCore.App
  - The following versions are installed:
      1.1.0
  - Alternatively, install the framework version '1.0.1'.

service docker start 启动docker服务

  1. sudo rpm --import 

  停止nginx: /opt/nginx/sbin/nginx -s stop

 

service docker stop 关闭docker服务

  1. sudo sh -c 'echo -e "[packages-microsoft-com-prod]nname=packages-microsoft-com-prod nbaseurl= " > /etc/yum.repos.d/dotnetdev.repo'

  重启nginx:/opt/nginx/sbin/nginx -s reload

分析:

service docker restart 重启docker服务

安装.net sdk

  1. 用VS2015新建 .net core WEB项目。并发布。

  2. COPY发表的文书到centos7

  3. dotnet TEST.WEB.dll

  4. 张开连接 localhsot:5000

1、centos安装dotnet 过程

局地概念的了然:

镜像:以为是三个iso安装文件

客栈:寄存了汪洋iso的地点

容器:通过iso安装出来的操作系统,多个镜像能够对应八个容器。

  1. .net core 2.0和1.*正如起来,2.0网址在发表后看不到refs文件夹,甚至暗中认可重视的一群dlls,那多少个暗中同意正视的dll都被打进.net core sdk里了,那样能够让安装包更加小。可是先天用的时候发掘,把那样的2.0发表文件放在centos 上的docker根本运行不起来。到项目目录下,改良了csproj文件,在PropertyGroup下扩大了<PublishWithAspNetCoreTargetManifest>false</PublishWithAspNetCoreTargetManifest>,那样1.*时期.net core发表时候生成的一群dll又回到了,再度扔到centos上的docker,平日运营了。

2.关于Dockerfile的说明:

FROM microsoft/aspnetcore:2.0    幼功重视镜像

A宝马7系G source   输入参数,这里指Dockerfile所在的目录

EXPOSE 60000    门户开放的端口

COPY ${source:-.} ./hello   source所在的目录下的富有剧情复制到容器的hello目录WOLacrosseKDI凯雷德 hello  职业目录

ENTRYPOINT ["dotnet","WebApplication6.dll"]   运行dotnet命令,参数为WebApplication6.dll

关于把asp.net core应用计划在centos 上的docker里,参考那篇随笔,写的准确:

想要删除untagged images,也正是那个id为的image的话能够用

docker rmi $(docker images | grep "^" | awk "{print $3}")

sudo yum update

sudo yum install libunwind libicu
curl -sSL -o dotnet.tar.gz https://go.microsoft.com/fwlink/?LinkID=835019 
sudo mkdir -p /opt/dotnet && sudo tar zxf dotnet.tar.gz -C /opt/dotnet
sudo ln -s /opt/dotnet/dotnet /usr/local/bin

sudo yum install libunwind libicu

下载dotnet.tar.gz 后,解压程序包,并应用“ln"命令把解压文件dotnet连采用目录”/usr/local/bin",使得在输入“dotnet"命令时,调用”/opt/dotnet/dotnet"

sudo yum install dotnet-sdk-2.0.3  

 

悉心那些2.0.3版本号,要依据自身项目标景况来,小编付出的时候是用的2.0.3,所以那边设置的要>=那几个版本

2、查看“/opt/dotnet”目录

图片 3

[root@master PublishOutput]# cd /opt/dotnet
[root@master dotnet]# ls
dotnet  host  LICENSE.txt  sdk  shared  ThirdPartyNotices.txt

 

"cd shared" 目录独有Micorsoft.NETCore.App,版本独有1.1.0

输入 dotnet --info 看看有未有安装成功

[root@master dotnet]# cd shared
[root@master shared]# ls
Microsoft.NETCore.App
[root@master shared]# cd Microsoft.NETCore.App
[root@master Microsoft.NETCore.App]# ls
1.1.0

图片 4

 

 

思维:在装置dotnet进度中,也只是解压文件,能或无法通过在Micorsoft.NETCore.App目录下,增添netcore1.0.1的1.0.1目录文件就可以解决吗

美滋滋,遭逢设置到这里就得了了,接下去正是把项目揭露到centos服务器

 

 

行动:
1、 下载netcore1.0.1,release版本,解压文件。

三.发布.Net Core 应用

2、拷贝Micorsoft.NETCore.App目录下的1.0.1目录文件到“/opt/dotnet/shared/Micorsoft.NETCore.App/"

1. 本身这里是经过VS17拓宽表露,跟早前.net项目洞穿从未分别,直接右键项目,点发表,选择仓库储存文件的文书夹,生龙活虎顿操作就行

3、cd到应用程序目录,测量试验"dotnet myapp.dll",如:

  1. 透过ftp工具XFTP 把发表到的文件上传到Centos系统上,工具百度电动下载就可以
[root@master ~]# cd  PublishOutput
[root@master PublishOutput]# ls
ConsoleApp1.deps.json  ConsoleApp1.pdb
ConsoleApp1.dll        ConsoleApp1.runtimeconfig.json
[root@master PublishOutput]# dotnet ConsoleApp1.dll
hello world

图片 5

出口了“hello world",难题消释。

 

 

3. 在Centos上开垦终端,步入你存项指标文件夹

图片 6 

4.输入指令 dotnet Mvc德姆o.dll (Mvc德姆o.dll那个依照本人的类外号字来)

图片 7

拜见那几个画面,就证实搞成功了,爽歪歪,是否很简短,接下去我们张开这一个地方浏览一下

图片 8

       完美,到那边就截至了,有空写下托管境遇,先贴上合法教程

     Nginx:

    

    Apache:

    

 

本文由澳门新萄京官方网站发布于www.8455.com,转载请注明出处:什么在centos操作系统上宣告,Docker的连带操作

关键词: