登陆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