NetCore 2.0 應用程序在centos 7上經過docker發佈

一  安裝netcore 2.0 SDKlinux

在centos 上面安裝netcore 2.0 與window上面是不太同樣的,注意,linux是不支持同時安裝兩個版本的.netcore SDK的,因爲我以前開發過netcore 1.04 的,如今須要升級到2.0的SDKdocker

那如何升級。json

1.找到當前的安裝路徑:centos

2.安裝.netcore 2.0bash

在這邊找到你要安裝的對應的包:https://www.microsoft.com/net/download/linux測試

 

 打開  yum instructions 連接:ui

我選擇不升級內核,直接安裝sdk  因此只須要執行框中的兩行命令spa

安裝完後,咱們會發現:netcore 2.0 sdk 安裝在usr/share/dotnet/dotnet.net

建立軟連接:3d

若是以前存在,那麼能夠執行   ln  -s -f    souredir  lindir

再次檢查dotnet 版本:

好了,版本是咱們要的版本了。

二  測試本機發布

上傳dotnet publish後的發佈文件到centos中,可使用

 

 

測試本機發布:dotnet  UIclub.Web.dll

我這裏是因爲程序已經發布到docker中跑起來了,佔用的端口的緣由

三 安裝DOCKER

 #安裝Docker

yum  install  docker
#啓動docker服務
systemctl  start docker.service
#配置開機啓動
systemctl   enable  docker.service

配置docker加速

配置docker加速最快的方法直接修改/etc/docker/daemon.json下的配置信息

/etc/docker/daemon .json
{
  "registry-mirrors" : [ "https://d8b3zdiw.mirror.aliyuncs.com" ]
}
而後在終端重啓docker服務
sudo systemctl daemon-reload
sudo systemctl restart docker

四 發佈程序到docker中

 1.拉取發佈的基本鏡像

docker pull docker.io/microsoft/dotnet:[tag]   拉取最新的鏡像,若是你是要舊版本的鏡像,能夠填寫相應的tag

docker images 

2.配置Dockerfile

按esc  :wq保存退出

docker build -t  demo:1.0  .   -->注意:最後有個點  表示當前路徑

docker run -d -p 8000:8000  demo:1.0  運行容器

查看運行的容器,正常跑起來的時候應該有一個正在運行的容器

docker ps

 

 五.測試

至此,發佈成功。

 

補充:

項目後期發佈後遇到一個附件上傳的問題,好比,建立容器後,附件是以前傳到容器中的某個目錄的,可是這樣就會致使萬一容器銷燬或者機器重啓後,上傳的文件都丟失的問題,那麼就須要解決這個問題

docker volume 技術就須要用上了,能過閱讀了Docker的官方開發文檔後瞭解到【https://docs.docker.com/engine/admin/volumes/volumes/】能夠掛載相應的主機host目錄到容器某個目錄下,實現 所謂的容器與主機文件的讀寫共享。

1.直接經過DockerFile來配置掛載點,經過這種方式實現的時候,不能直接指定具體的主機掛載目錄,docker會自動生成一個文件夾的映射目錄,這個不推薦

2.docker run -d -p 8000/8000  -v  /test:/publish/wwwroot/upload  demo:1.0   來實現 【注意,Docker 實際上是一個微的VM,要特別注意這裏的 -v 後面的路徑,不然指不到正確的目錄】

相關文章
相關標籤/搜索