!!!!NanoServer已死,烧香!!!donnetcore 只支持1.x

 

入门参考https://docs.microsoft.com/zh-cn/windows-server/get-started/nano-server-quick-start

1、创建VHD

Import-module .\NanoServerImageGenerator.psm1 -Verbose

New-NanoServerImage -Edition Standard -DeploymentType Guest -MediaPath j:\ -BasePath d:\vm\nano -TargetPath d:\vm\nano\nano.vhd -ComputerName Nano -Package Microsoft-NanoServer-IIS-Package –EnableRemoteManagementPort

               
 

2、使用VHD创建虚拟机(在其它操作系统上也可以应用此镜像,如WIN8.1)

 

 

3、远程管理

A、连接

@@@code
Set-Item WSMan:\localhost\Client\TrustedHosts "10.168.1.125"
Enter-PSSession -ComputerName "10.168.1.125" -Credential "administrator"
@@#

               

B、共享文件夹

参考https://www.cnblogs.com/dotNETCoreSG/p/aspnetcore-2_5-nano_server_on_core.html

 

以SCSI方式挂载其它虚拟磁盘 参考

@@@code
Get-Dis
Get-Partition
Set-Disk -Number 1 -IsOffline $false
Set-Disk -Number 1 -IsReadOnly $false  Remove-Partition -DriveLetter D  Set-Partition -DriveLetter E -NewDriveLetter D  
 mkdir c:\temp
net share AspNetCoreSampleForNano=c:\PublishedApps\AspNetCoreSampleForNano /GRANT:EVERYONE`,FULL  (启用文件共享没什么效果)
netsh advfirewall firewall set rule group="File and Printer Sharing" new enable=yes
netsh advfirewall firewall set rule group="@FirewallAPI.dll,-28502" new enable=yes  net share ShareTemp=c:\temp /GRANT:EVERYONE`,FULL
@@#

               
 

C、开端口

参考http://www.pstips.net/manage-firewall-using-powershell.html

               
 

New-NetFirewallRule -Name "MyService" -DisplayName "我的服务" -Protocol TCP -LocalPort 80,8080,3413-3420 -Action Allow -Enabled True

               
 

               
 

D、安装NET CORE

参考https://docs.microsoft.com/en-us/dotnet/core/tools/dotnet-install-script

./dotnet-install.ps1 -Channel 2.0 -InstallDir C:\cli

如果提示错误

Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass

             
 

IIS

参考 https://www.cnblogs.com/dotNETCoreSG/p/aspnetcore-2_5-nano_server_on_core.html

下载安装脚本,执行命令

             
 

             
 

自服务

参考https://docs.microsoft.com/zh-cn/aspnet/core/host-and-deploy/windows-service?view=aspnetcore-2.1

Cmd /c sc create MyService binPath= "c:\temp\publish\WebApplication2.exe" start= auto

Cmd /c sc start MyService

(使用独立发布,安装了2.0框架,在CENTOS中安装了2.1,独立发布出现DLL的版本签名不一致,最终使用框架依赖发布)

public
class
Program

{

public
static
void Main(string[] args)

{

// BuildWebHost(args).Run();

CreateWebHostBuilder(args).RunAsService();

}

             
 

public
static IWebHost BuildWebHost(string[] args)

//WebHost.CreateDefaultBuilder(args)

// .UseStartup<Startup>()

// .Build();

{

//在IIS启动

var config = new ConfigurationBuilder()

.SetBasePath(Directory.GetCurrentDirectory())

.AddJsonFile("hosting.json", optional: true)

.Build();

return
new WebHostBuilder()

.UseConfiguration(config)

.UseKestrel()

.UseContentRoot(Directory.GetCurrentDirectory())

.UseIISIntegration()

.UseStartup<Startup>()

.Build();

}

             
 

public
static IWebHost CreateWebHostBuilder(string[] args)

{

//以服务形式启动

var pathToExe = System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName;

var pathToContentRoot = Path.GetDirectoryName(pathToExe);

             
 

var config = new ConfigurationBuilder()

.SetBasePath(pathToContentRoot)

.AddJsonFile("hosting.json", optional: true)

.Build();

             
 

return
new WebHostBuilder()

.UseConfiguration(config)

.UseKestrel()

.UseContentRoot(pathToContentRoot)

.UseStartup<Startup>().Build();

}

             
 

}

             
 

         
 

Linux下安装NETCORE

#netcor 安装脚本

#vi /etc/sysconfig/network-scripts/ifcfg-eth0 (可能不是这个名字),将onboot=no修改为yes

ip addr

service network restart

ip addr

     
 

#使用CRT登录方便复制

su

     
 

yum -y install net-tools

ifconfig

mkdir /opt/dotnet

cd /opt/dotnet

     
 

yum -y install wget

yum -y install icu

     
 

wget -c https://dot.net/v1/dotnet-install.sh

     
 

chmod +x dotnet-install.sh

./dotnet-install.sh -Channel 2.1 -InstallDir /opt/dotnet

export PATH=$PATH:/opt/dotnet

./dotnet --info

     
 

yum -y install zip unzip

yum -y install lrzsz

     
 

#部署网站

mkdir /app

cd /app

mkdir BandServer

     
 

#使用rz指令上传网站压缩包,使用unzip解压,注意压缩包的相对目录

#unzip publish.zip

#添加防火墙

firewall-cmd --zone=public --add-port=3415/tcp --permanent

firewall-cmd --reload

     
 

#启动网站观察是否工作正常

dotnet BandServer.dll

     
 

     
 

#配置守护进程

     
 

yum -y install python-setuptools

easy_install supervisor

supervisord --version

     
 

echo_supervisord_conf > /etc/supervisord.conf

     
 

#编辑supervisord.conf在末尾添加应用(如下,记得去除#)

# [program:bandserver]

# directory=/app/BandServer

# command=/opt/dotnet/dotnet BandServer.dll

# autostart=true

# autorestart=true

# stderr_logfile=/var/log/bandserver.err.log

# stdout_logfile=/var/log/bandserver.out.log

# user=root

# stopsignal=INT

# redirect_stderr=true

     
 

     
 

#设置为开机执行

# vi /etc/rc.local

#添加 supervisord -c /etc/supervisord.conf

#chmod +x /etc/rc.local

systemctl enable rc-local

#手动启动守护

supervisord -c /etc/supervisord.conf

supervisorctl start all

supervisorctl status

     
 

#重启

# reboot

       
 

       
 

     

Nano Server速记的更多相关文章

  1. 微软发布 Windows Server 2016 预览版第三版,开发者要重点关注Nano Server

    微软已经发布 Windows Server 2016 和 System Center 2016 第三个技术预览版,已经提供下载.Windows Server 2016 技术预览版第三版也是首个包括了容 ...

  2. ASP.NET Core 中文文档 第二章 指南(5) 在 Nano Server 上运行ASP.NET Core

    原文 ASP.NET Core on Nano Server 作者 Sourabh Shirhatti 翻译 娄宇(Lyrics) 校对 刘怡(AlexLEWIS).许登洋(Seay).谢炀(kile ...

  3. 部署微软Nano Server的好处是什么?

    虚拟化对数据中心效率和硬件利用率产生了戏剧性的影响,但是接下来有关系统整合的主要责任落 在了操作系统的重量上.虚拟机通常运行企业级操作系统,比如Windows Server,但是Windows Ser ...

  4. Docker windows nano server容器中安装ssh实现远程登录管理

    [问题] 使用ServiceMonitor.exe作为前台进程运行起来的容器无法attach. 无法远程连接到运行中的容器中进行管理. [解决方法] 在container中新建管理员用户,通过SSH实 ...

  5. 远离DoS攻击 Windows Server 2016发布DNS政策

             Windows Server 2016的网络功能虽然没有获得像Docker容器和Nano Server同等重要的关注,但是管理员们应该了解的是,新的域名系统(Domain Name ...

  6. Windows Server 2016-存储新增功能

    本章给大家介绍有关Windows Server 2016 中存储方面的新增功能,具体内容如下: 1.Storage Spaces Direct: 存储空间直通允许通过使用具有本地存储的服务器构建高可用 ...

  7. Windows Server 2016-增强IPAM

    Windows Server 2016网络功能可能没有像Docker容器或Nano Server那样得到关注,但是管理员应该了解新的域名系统服务器和IP地址管理功能如何帮助他们获得对网络环境的更多控制 ...

  8. Windows Server 2016-Nano Server介绍

    WindowsServer 2016 提供了新的安装选项:Nano Server.Nano Server 是针对私有云和数据中心进行优化的远程管理的服务器操作系统. 类似于 Windows Serve ...

  9. Windows Server 2016-系统安装软硬件要求

    本章为大家补充介绍安装 Windows Server 2016的最低系统要求. 如果安装时选择通过"服务器核心"选项进行安装,则应注意,没有安装任何 GUI 组件,并且将不能使用服 ...

随机推荐

  1. Java连接redis

    一.依赖包 jedis-2.1.0.jar   commons-pool-1.6.jar 二.实例 //连接参数public class RedisConfig { public static int ...

  2. Mybatis之旅第五篇-动态SQL

    一.引言 在之前的CRUD例子中,都是一些很简单的SQL,然而实际的业务开发中会有一些复杂的SQL,我们经常需要拼接SQL,拼接的时候要确保不能忘了必要的空格,还要注意省掉列名列表最后的逗号.Myba ...

  3. 基于Unity的AR开发初探:第一个AR应用程序

    记得2014年曾经写过一个Unity3D的游戏开发初探系列,收获了很多好评和鼓励,不过自那之后再也没有用过Unity,因为没有相关的需求让我能用到.目前公司有一个App开发的需求,想要融合一下AR到A ...

  4. Java并发编程面试题 Top 50 整理版

    本文在 Java线程面试题 Top 50的基础上,对部分答案进行进行了整理和补充,问题答案主要来自<Java编程思想(第四版)>,<Java并发编程实战>和一些优秀的博客,当然 ...

  5. Eureka注册客户端

    1.pom.xml <dependency> <groupId>org.springframework.cloud</groupId> <artifactId ...

  6. 【表格】大于号转义符&amp;gt;---小于号转义符&amp;lt;

    关于来源:百度及个人经验. 常用的都是个人尝试过或个人常用的,其它的都是从百度来的.使用前建议写个HTML的Demo试试看 ^_^ 比心 < < < 小于号 > > &g ...

  7. 阿里云ECS云服务器的简单使用

    随着云服务的推广与普及,越来越多的人开始接触到云服务器.然而有些人购买后却不知从何下手,今天就来看下阿里云服务器的使用吧! 一.购买完阿里云服务器后进入阿里云官网首页点击控制台 找到所购买的云产品项点 ...

  8. Vagrant 构建 Linux 开发环境

    Vagrant 是一个简单易用的部署工具,用英文说应该是 Orchestration Tool .它能帮助开发人员迅速的构建一个开发环境,帮助测试人员构建测试环境, Vagrant 基于 Ruby 开 ...

  9. mysql性能优化之数据库级别优化--优化sql语句

    一  优化SELECT语句 1.1 WHERE子句优化 本文暂时只讨论可以处理WHERE子句的优化,下面的一些实例使用SELECT语句,但是相同的优化同样适用DELETE和UPDATE语句中的WHER ...

  10. 基于Spring和Mybatis拦截器实现数据库操作读写分离

    首先需要配置好数据库的主从同步: 上一篇文章中有写到:https://www.cnblogs.com/xuyiqing/p/10647133.html 为什么要进行读写分离呢? 通常的Web应用大多数 ...