bat--docker部署脚本
@echo off :: dotnet 发布目录 set publishDir=E:\TEMP\abc\ set codeDir=D:\Source\Webapi set hostname=root@0.0.0.0 set port=111111
:: linux 服务器上的目录 set projDir=/abc/core set container=abccore set image=core_abc:latest set ymlfile=/abc/core/docker-compose.stage.yml cd /d %codeDir% dotnet publish -c Release -o %publishDir% if %errorlevel% == 0 ( pscp -P %port% -r %publishDir% %hostname%:%projDir% if %errorlevel% == 0 ( ssh -p %port% %hostname% "docker stop %container%" if %errorlevel% == 0 ( ssh -p %port% %hostname% "docker rm %container%" if %errorlevel% == 0 ( ssh -p %port% %hostname% "docker rmi %image%" if %errorlevel% == 0 ( ssh -p %port% %hostname% "docker-compose -f %ymlfile% up -d" if %errorlevel% == 0 ( ssh -p %port% %hostname% "rm -rf %projDir%/*" ) ) ) ) else ( ssh -p %port% %hostname% "docker-compose -f %ymlfile% up -d" if %errorlevel% == 0 ( ssh -p %port% %hostname% "rm -rf %projDir%/*" ) ) ) else ( echo upload-error ) ) else ( echo publish-error ) pause>nul