Nano Server速記

来源:https://www.cnblogs.com/QinQouShui/archive/2018/08/05/9426050.html
-Advertisement-
Play Games

入門參考https://docs.microsoft.com/zh-cn/windows-server/get-started/nano-server-quick-start 1、創建VHD Import-module .\NanoServerImageGenerator.psm1 -Verbose... ...


入門參考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、連接

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

             

mkdir c:\temp

(啟用文件共用沒什麼效果)netsh advfirewall firewall set rule group="File and Printer Sharing" 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

     

     

   


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 軟體操作命令 1. 軟體包管理器: yum 2. 安裝軟體: yum install xxx 3. 卸載軟體: yum remove xxx 4. 搜索軟體: yum serach xxx 5. 清理緩存: yum clear packages 6. 列出已安裝: yum list 7. 軟體包: ...
  • 眾所周知在預設參數情況下Linux對高併發支持並不好,主要受限於單進程最大打開文件數限制、內核TCP參數方面和IO事件分配機制等。下麵就從幾方面來調整使Linux系統能夠支持高併發環境。 iptables相關 如非必須,關掉或卸載iptables防火牆,並阻止kernel載入iptables模塊。這 ...
  • 開發的時候遇到一個問題,伺服器一旦重啟,項目生成的文件就丟失了,感覺很莫名其妙..一開始猜測是文件流沒有關閉,檢查了代碼,感覺沒毛病.於是先看看是關機丟失了文件還是開機被刪除了.下麵的腳本每秒執行一次,把指定目錄下的文件數量寫入到file.txt 中.最後把它加入開機自啟就好了. while tru ...
  • 看了幾篇privoxy的文章,感覺講的都不詳細,在此整理一遍。 註:本文下麵的內容僅討論思路,作為技術交流之用,請勿用作非法途徑. Privoxy是一款帶過濾功能的代理伺服器,針對HTTP、HTTPS協議。通過Privoxy的過濾功能,用戶可以保護隱私、對網頁內容進行過濾、管理cookies,以及攔 ...
  • //簡易ftp客戶端#include <stdio.h> #include <string.h> #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #include <arpa/inet.h> #includ ...
  • Anaconda集合了python,Spyder,Jupyter notebook及conda 包管理器與環境管理器(含常用的panda,numpy等),省去單獨下載的繁瑣步驟,方便使用。 註:如過已經下載過python,可點擊python安裝包,再次setup,選擇uninstall. 如Gean ...
  • 要求:原操作系統代碼里只是支持了日語顯示,需要做的是實現對這個系統的漢字全形支持。 hzk16的介紹以及簡單的使用方法 HZK16字型檔是符合GB2312標準的16×16點陣字型檔,HZK16的GB2312-80支持的漢字有6763個,符號682個。其中一級漢字有3755個,按聲序排列,二級漢字有300 ...
  • 前言通常我們都是使用xtrabackup工具來備份資料庫,它是一個專業的備份工具,先來簡單介紹下它。Xtrabackuppercona提供的mysql資料庫備份工具,惟一開源的能夠對innodb和xtradb資料庫,它的增量備份不是基於二進位日誌文件來還原數據的,是基於mysql數據塊。特點:備份還... ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...