VB.net 2010 視頻教程 VB.net 2010 視頻教程 VB.net 2010 視頻教程
SQL Server 2008 視頻教程 c#入門經典教程 Visual Basic從門到精通視頻教程
  • ASP.net教程之.NetCore 發布到 Centos docker

  • 2019-04-18 13:43 來源:未知

【搭建環境】

魔兽世界wow www.geyjm.icu      系統:CentOS 7.0    容器:Docker 1.13.1    .Net Core 版本:.NET Core 2.2     工具:putty、filezilla 等.

一、安裝 docker

1. 安裝 docker

    yum install docker            ps: 更新 docker 用 yum update 

2. 啟動 docker 服務

    systemctl  start docker.service 

3. 配置開機啟動

    systemctl enable docker.service 

    4. 配置 docker 加速器

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

          { 
             "registry-mirrors": ["https://d8b3zdiw.mirror.aliyuncs.com"] 
           }                

5. 在終端重啟 docker 服務      

        sudo systemctl daemon-reload 
        sudo systemctl restart docker     

二、部署.NetCore 應用到 Docker

1. 新建一個 ASP.NET Core 2.2 項目,在 Windows 下發布運行成功

2. 添加 docker 支持,選擇 Linux(或在添加項目時勾選啟用docker支持)

3.編寫DockerFile,并設置文件屬性:始終復制    

        FROM microsoft/dotnet:2.2-aspnetcore-runtime    
        COPY  . /apiweb    
        WORKDIR /apiweb
        EXPOSE 80 
        ENTRYPOINT ["dotnet", "ApiWeb.dll"]    

 

      構建Dockerfile 注釋
      ① FROM指定基礎鏡像,這里統一使用microsoft/dotnet(:tag)Tag是一個標簽,指定一個版本或者最近的版本(即latest)
      ② COPY拷貝發布文件到本地的/ apiweb /的路徑下,供容器使用
      ③ WORKDIR 指定容器的工作目錄
      ④ EXPOSE 指定容器的端口(注意,不是服務器訪問到程序的端口) 
      ⑤ ENTRYPOINT 執行交互命令,使用CMD亦可賽艇,但是注意兩者都是執行完整命令的話,是會相互覆蓋的,只有最后一個有效。

4.發布項目

5.將Dockerfile文件復制到發布成功的目錄,并利用ftp工具全部上傳到服務器

  

6.構建Docker鏡像

①.進入到發布文件目錄(Dockerfile文件所在目錄)

          cd  /home/wwwroot/apiweb

②. 拉取基礎鏡像

            docker pull microsoft/dotnet:2.2-aspnetcore-runtime 

③. 執行命令創建鏡像 ,注意最后面有個.

            docker build -t apiweb .  

apiweb是創建鏡像的名稱,這個命令會根據當前目錄下dockerfile配置文件,進行打包。運行查看鏡像 docker images

④. 創建容器,其中前一個apiweb是容器名 后一個apiweb是上一步的鏡像名。

--name:指定容器名稱;

-p:指定容器端口,是進行宿主和容器之間端口的映射,(-p 宿主端口:容器端口);

-d:指定容器后臺運行,這樣容器就會一直運行,即使關掉終端窗口。

            docker run --name=apiweb -p 80:80 -d  apiweb
            或者
            docker run --name=apiweb -p 宿主ip:5000:80 -d  apiweb

出現一長串字符串,便是表示容器運行成功。

7.驗證訪問

直接通過瀏覽器訪問即可(宿主ip+端口號)。

 

復制代碼
            Docker常用命令:
            docker -v / version /info         查看docker版本信息
            docker images                     查看所有鏡像
            docker ps                         查看所有正在運行的容器
            docker ps -a                      查看所有容器
            docker rmi+鏡像ID                 刪除某個鏡像
            docker stop+容器ID                停止某個容器
            docker start+容器ID               啟動某個容器
            docker restart+容器ID             重啟某個容器
            docker rm+容器ID                  刪除某個容器
            docker rmi $(docker images -q)    刪除所有鏡像
            docker rm $(docker ps -a -q)      刪除所有容器
            docker logs +容器ID               查看容器日志信息找原因
            netstat -tanlp                    查看端口
            kill+端口                         殺死某個端口
            docker search mysql               鏡像檢索
            docker pull mysql                 鏡像下載
            …
復制代碼

相關教程