echo '>>> Delete project directory' rm -rf / home / code / vueDotNetCore- OpenSource echo ' >>> Create project directory' mkdir / home / code / vueDotNetCore- OpenSource echo ' >>> Clone source code' git clone https : //github.com/ZhengHengWU/vue-dotNetCore-Demo.git / home / code / vueDotNetCore- OpenSource echo 'Execute dotnet compilation and release' dotnet restore /home/code/vueDotNetCore-OpenSource/dotNetCoreApi dotnet build /home/code/vueDotNetCore-OpenSource/dotNetCoreApi dotnet publish /home/code/vueDotNetCore-OpenSource/dotNetCoreApi -o /home/publish/dotNetApi echo '>>> Get the old container id ' CID = $ (docker ps | grep " dotnetapicontains " | awk' {print $ 1 } ') echo $ CID echo' >>> Stop the old container ' if [ " $ CID " ! = "" ]; then docker stop $ CID echo ' >>> Delete old container' docker rm $ CID fi echo ' >>> Get old image' IID = $ (docker images | grep " dotnetapi " | awk '{print $ 3 } ') echo $IID if[ " $ IID " ! = "" ]; Then echo ' >>> Delete old image' docker rmi $ IID fi echo 'Build docker image' docker build -t dotnetapi / home / publish / dotNetApi sleep 10 echo ' >> > start a new container ' Docker RUN -d -p 5002: 5002 - name dotnetapicontains dotnetapi