主頁(yè) > 知識(shí)庫(kù) > Docker安裝部署Net Core實(shí)現(xiàn)過程解析

Docker安裝部署Net Core實(shí)現(xiàn)過程解析

熱門標(biāo)簽:檢查注冊(cè)表項(xiàng) 百度競(jìng)價(jià)點(diǎn)擊價(jià)格的計(jì)算公式 智能手機(jī) 美圖手機(jī) 硅谷的囚徒呼叫中心 使用U盤裝系統(tǒng) 阿里云 網(wǎng)站建設(shè)

一、docker 安裝及設(shè)置

#安裝 CentOS已經(jīng)將Docker軟件包放在了Extras軟件源中,直接利用即可
yum install docker-io -y

#查看docker的版本 version
docker -v

#開啟Docker服務(wù)
systemctl start docker.service

#開機(jī)啟動(dòng)Docker服務(wù)
systemctl enable docker.service

#查看Docker服務(wù)啟動(dòng)狀態(tài)
systemctl status docker.service

#重啟Docker服務(wù)
systemctl restart docker.service

二、新建Net Core 程序

1、新建Net Core 項(xiàng)目。注意不啟動(dòng)Docker 支持

2、發(fā)布新建的項(xiàng)目(目標(biāo)運(yùn)行時(shí):可移植)

3、在發(fā)布后的文件夾中新建一個(gè)Dockerfile 文件(沒有后綴)

大概內(nèi)容如下:

FROM microsoft/dotnet:2.1-aspnetcore-runtime  //注意和你的版本要匹配
WORKDIR /app
COPY . . //將當(dāng)前目錄下的所有文件(除了.dockerignore排除的路徑),都拷貝進(jìn)入 image 文件的/app目錄。
EXPOSE 5000 //端口號(hào)(將容器 5000 端口暴露出來(lái), 允許外部連接這個(gè)端口。)
//EXPOSE 443 //Https 端口開啟
ENTRYPOINT ["dotnet", "DockerDemo5.dll"] //運(yùn)行的程序集 改成你自己的

三、上傳發(fā)布后的項(xiàng)目到Linux服務(wù)器(CentOS)

1、進(jìn)入程序的發(fā)布目錄

#進(jìn)入到程序的發(fā)布目標(biāo)
cd /data/web/mydocker

#創(chuàng)建 image文件 (-t參數(shù)用來(lái)指定 image 文件的名字,后面還可以用冒號(hào)指定標(biāo)簽 PS:注意最后的 點(diǎn))
docker build -t aspnetcoredocker1.1 . 

#生成容器,每運(yùn)行一次,就會(huì)新建一個(gè)容器(這里的5000:5000 代表把容器內(nèi)的5000端口映射到你主機(jī)的5000端口,容器端口在后)
docker run -it -p 5000:5000 aspnetcoredocker1.1
#docker run -it -p 5000:5000 aspnetcoredocker1.1:TAG  // 默認(rèn)TAG是latest

2、直接訪問就可以了

3、docker 容器自動(dòng)啟動(dòng)(在容器退出或斷電開機(jī)后,docker可以通過在容器創(chuàng)建時(shí)的 --restart參數(shù)來(lái)指定重啟策略)

# 設(shè)置啟動(dòng)策略
docker run --restart always -it -p 5000:5000 aspnetcoredocker1.1

#如果容器已經(jīng)被創(chuàng)建,我們想要修改容器的重啟策略
docker update --restart always 3ec28be7254a //容器ID


# --restart 多個(gè)參數(shù)值選擇
no 不自動(dòng)重啟容器. (默認(rèn)值)
on-failure 容器發(fā)生error而退出(容器退出狀態(tài)不為0)重啟容器,可以指定重啟的最大次數(shù),如:on-failure:10
unless-stopped 在容器已經(jīng)stop掉或Docker stoped/restarted的時(shí)候才重啟容器,手動(dòng)stop的不算always 在容器已經(jīng)stop掉或Docker stoped/restarted的時(shí)候才重啟容器

4、docker 相關(guān)命令

鏡像文件和容器命令

#查看所有鏡像
docker images

#刪除一個(gè)imageid的鏡像
docker rmi [IMAE_ID] 

#刪除所有鏡像
sudo docker rmi $(docker images -q) 


#查看所有容器運(yùn)行狀態(tài)
docker ps -a  
docker container ls -all

#刪除一個(gè)containerid的容器(實(shí)例)
docker rm 6f0c67de4b72 

#刪除所有容器
docker rm $(sudo docker ps -a -q)

容器日志

#查看指定時(shí)間后的日志,只顯示最后100行:
docker logs -f -t --since="2019-06-08" --tail=100 CONTAINER_ID

#查看某時(shí)間之后的日志:
docker logs -t --since="2019-06-08" CONTAINER_ID

#查看某時(shí)間段日志:
docker logs -t --since="2019-06-08" --until "2019-06-09" CONTAINER_ID

#查看最近30分鐘的日志:
docker logs --since 30m CONTAINER_ID

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

標(biāo)簽:煙臺(tái) 通遼 賀州 黃山 湖北 山南 湘潭 懷化

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Docker安裝部署Net Core實(shí)現(xiàn)過程解析》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266