Python 指令碼拉取 Docker 映象問題
阿新 • • 發佈:2020-01-09
好久沒有介紹小工具了,今天碰到一個,簡單粗糙但是有用的一個,這個工具有多簡單粗糙呢?證據有二:
連 Python shebang 都沒有;
簡單到原創 300 字都很難湊夠。
言歸正傳:安裝工經常會遇到一個問題:沒 Docker 怎麼拉映象?這個小工具就是做這個事情的。
該專案同樣是個開源專案,地址為: https://github.com/NotGlop/docker-drag
這個專案使用 Python 的 Request 庫,藉助 API 直接從倉庫中拉取映象,並儲存為 TAR 檔案。
儲存下來的 Tar 檔案可以直接使用 docker load -i 命令進行載入。由於去掉了對 Docker/Podman/xxxx 等的依賴,在實際工作中,例如對於檔案傳輸或者 CICD 流程來說,這個指令碼都有可能發揮很有意思的作用。
用法也是相當的簡單粗暴: python3 docker_pull.py [image name] ,就完成任務了。
例如:
$ python3 docker_pull.py nginx:alpine Creating image structure in: tmp_nginx_alpine 89d9c30c1d48: Pull complete [2787134] 110ad692b782: Pull complete [5953615] Docker image pulled: library_nginx.tar $ ls library_nginx.tar library_nginx.tar
或者放到映象裡:
FROM alpine:3.10.3 RUN apk add -u ca-certificates python3 \ && pip3 install requests \ && wget https://raw.githubusercontent.com/NotGlop/docker-drag/master/docker_pull.py
總結
以上所述是小編給大家介紹的Python 指令碼拉取 Docker 映象問題,希望對大家有所幫助!