登陸azuredocker
地址 https://dev.azure.com/
ubuntu
項目信息,儘可能用小寫
服務器
``` FROM microsoft/dotnet:2.1-aspnetcore-runtime-stretch-slim AS base WORKDIR /app EXPOSE 80 EXPOSE 443 FROM microsoft/dotnet:2.1-sdk-stretch AS build RUN mkdir -p /app WORKDIR /src COPY . . RUN dotnet restore "firstapp.csproj" RUN dotnet build "firstapp.csproj" -c Release -o /app FROM build AS publish RUN dotnet publish "firstapp.csproj" -c Release -o /app FROM base AS final WORKDIR /app COPY --from=publish /app . ENTRYPOINT ["dotnet", "firstapp.dll"] ```
到如今爲止,docker倉庫建立完畢,代碼倉庫也建立完畢,準備開始構建。app
部署完成後,就能夠看到 docker鏡像上傳到dockerhub了。ssh
這裏演示用ubuntu服務器, 首先安裝docker環境
sudo apt-get install docker.io
安裝成功後在終端輸入docker,確保docker安裝ok。優化
增長構建步驟,ssh到服務器,自動拉取鏡像並運行。
ui
# stop and remove all containers currcontainer=$(docker ps -a | grep "$(Build.Repository.Name)_feature*" | awk '{print $1}') if [ "${currcontainer}" != "" ]; then docker stop $(docker ps -a | grep "$(Build.Repository.Name)_feature*" | awk '{print $1}') docker rm -f $(docker ps -a | grep "$(Build.Repository.Name)_feature*" | awk '{print $1}') fi # run curr docker pull a304885433/$(Build.Repository.Name):$(Build.BuildId) docker run -d -p 8002:80 --name=$(Build.Repository.Name)_feature a304885433/$(Build.Repository.Name):$(Build.BuildId)
再次部署,就能夠看到部署成功,站點就能夠訪問了。rest