啟動容器報錯OCI runtime create failed: container_linux.go:367:,可能與錯誤的方式導入鏡像有關


最近被安排遷移開發服務器,肯定要遷移服務器的鏡像。導出的鏡像因為要網絡傳輸,所以就壓縮了一下。命令如下

docker save -o centos73.tar centos-php7312:v1.0
tar -cvzf  centos73.tar.gz centos73.tar 

 網絡傳過來之后用gzip -d 解壓(問題出在這)后就用docker load導入 發現報錯,

open /var/lib/docker/tmp/docker-import-********/repositories: no such file or directory

然后嘗試用docker import ,竟然可以導入,就沒有關注。

之后就是用鏡象啟動容器,然后就報錯了

 

ERROR: for xxx  Cannot start service xxx : OCI runtime create failed: container_linux.go:367: starting container process caused: exec: "sh": executable file not found in $PATH: unknown
ERROR: Encountered errors while bringing up the project.

 

按理說使用save命令導出的鏡像要用 load導入才對。

網上有說需要完全解壓再重新打包一下。

所以我考慮到可能解壓鏡像文件的方式有問題。

用tar -xvf 解壓了一下centos73.tar。再用load命令導入。這次成功了。問題排查了有一會,所以記錄一下。或許能夠幫助到網友。

 

總結:docker save 命令導出的鏡像格式是.tar 是打包文件。壓縮后帶.gz 后綴是壓縮文件。需要用tar 來解壓。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM