用Docker自动构建纸壳CMS
紙殼CMS可以運行在Docker上,接下來看看如何自動構建紙殼CMS的Docker Image。我們希望的是在代碼提交到GitHub以后,容器鏡像服務可以自動構建Docker Image,構建好以后,就可以直接拿這個Docker Image來運行了。
Dockerfile
最重要的,就是Dockerfile中的定義了。先上代碼:
FROM microsoft/aspnetcore-build:latest AS builder WORKDIR /build # Copy all files COPY . ./ RUN dotnet restore # Release ZKEACMS.WebHost WORKDIR /build/src/ZKEACMS.WebHost RUN dotnet publish-zkeacms# Build runtime image FROM microsoft/aspnetcore:2.0.3 WORKDIR /zkeacms COPY --from=builder /build/src/ZKEACMS.WebHost/bin/Release/PublishOutput . EXPOSE 80 ENTRYPOINT ["dotnet", "ZKEACMS.WebHost.dll"]簡單解釋一下,首先,需要使用microsoft/aspnetcore-build來發布紙殼CMS,因為microsoft/aspnetcore只是runtime,并不能release。
整個Dockerfile的定義很簡單,如果您已經有安裝了docker,將代碼保存到項目的根目錄,文件名為Dockerfile,就可以直接使用docker build來生成docker image了。
docker build -t zkeacms .自動構建
已經定義好了Dockerfile,并可以在docker的環境中編譯,發布,那現在就可以使用容器鏡像服務來自動構建了。
Docker Hub
使用Docker Hub,創建一個自動構建的倉庫,連接到GitHub中的項目,可以輕松實現自動構建
選擇一個你的項目
在創建好你的倉庫以后,簡單設置一下分支和Dockerfile的路徑,就可以了
阿里云容器鏡像服務
如果你覺得Docker Hub太慢了,在國內,你可以使用阿里云的容器鏡像服務。https://dev.aliyun.com/search.html
新建一個鏡像倉庫就行了:
在設置好以后,你會發現在你的項目設置中,會多了Webhooks或者Integrations & services
?原文鏈接:http://www.zkea.net/codesnippet/detail/post-78
轉載于:https://www.cnblogs.com/seriawei/p/zkeacms-docker.html
總結
以上是生活随笔為你收集整理的用Docker自动构建纸壳CMS的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 初识spring-boot
- 下一篇: 安卓源码 代号,标签和内部版本号