windows下docker通过bat文件重启的小问题记录
因为windows下直接打开cmd执行docker ps等命令报错问题,详情见另一篇文章windows下执行docker命令报错
需要先执行 @FOR /f "tokens=*" %i IN ('docker-machine env default') DO @%i 进行设置一些环境变量后,再执行docker命令即可。
因为现在需要使用bat脚本进行重启容器,所以在脚本中也需要先执行 @FOR /f "tokens=*" %%i IN ('docker-machine env default') DO @%%i 再执行docker restart,发现通过cmd执行这两句正确,可行,但是一调用bat文件执行就报错,各种尝试发现 @FOR 命令在bat中制定变量需要用两个 %%
所以应该改为 @FOR /f "tokens=*" %%i IN ('docker-machine env default') DO @%%i 就可以啦
附重启的bat

@echo off
@FOR /f “tokens=*” %%i IN (‘docker-machine env default’) DO @%%i
echo restart container
docker restart 731
if errorlevel 0 ( echo start succ. ) else echo failed

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐