2014-10-05 28 views
17

我是碼頭工人,並開始使用它。 我已經創建了幾個圖像從提交一些變化。 入門如何查看Docker鏡像的提交郵件

sudo docker run -i -t ubuntu /bin/bash 

做了幾個安裝,退出並做

sudo docker commit -m="my first message" innocent_dockernovice sandbox/yves:s1 

和repeting過程

sudo docker run -i -t sandbox/yves:sN /bin/bash 

在貝殼做的東西,退出和

sudo docker commit -m="what I did in step N" happy_dockeruser sandbox/yves:sN+1 

現在我想回到上一步圖像,並希望列出所有執行sudo docker image -m命令類似於git log命令的消息。什麼是最好的方式來做到這一點?

+0

你可能會考慮加入您的帳戶泊塢窗的用戶列表。所以你不需要繼續輸入sudo。 https://gist.github.com/aluedeke/7977839#file-gistfile1-sh – 2014-10-05 06:33:11

+0

感謝您的回答和提示。我無法讓自己在碼頭工作組中正常工作。從根目錄運行:'gpasswd yves docker'。 '/ etc/group'被正確修改,但是在我的帳戶下運行'docker ps -a'我得到'Get http:///var/run/docker.sock/v1.12/containers/json?all = 1:撥號unix /var/run/docker.sock:權限被拒絕 – 2014-10-05 07:00:39

+0

我已經使用了'sudo gpasswd -a USER docker'#在Ubuntu14.04上用你的用戶名替換USER,它適用於我。你還必須'sudo服務docker restart'。你也可以嘗試重新啓動系統,看看是否有幫助。 – 2014-10-05 07:02:35

回答

16

您可以通過在之後顯示的提交散列上使用docker檢查來查看提交郵件。要查看更多它們,您必須遞歸執行。

$ docker commit -m "added test file" sick_morse 
61efdbd141dc5fb1c289ed5151f3ce7b5985a5829bd92ba322ad6061cb1eee21 
$ docker inspect 61efdbd141dc5fb1c289ed5151f3ce7b5985a5829bd92ba322ad6061cb1eee21 | grep added 
    "Comment": "added test file", 

找到的信息here

這將讓你查看郵件的前3最近的評論。

$ docker images -a --no-trunc | head -n4 | grep -v "IMAGE ID" | awk '{ print $3 }' | xargs docker inspect | grep Comment 
15

爲了使事情變得簡單,我做了一個簡單的bash腳本在github上要點:docker-log

#!/usr/bin/env bash 

DOCKER=`which docker` 

if [ "$#" -ne 1 ]; then 
    echo "Usage: $0 IMAGE" 
    exit 0 
fi 

for commit in $($DOCKER history $1 | sed 1d | awk '{ print $1 }') 
do 
    content="$commit 
$($DOCKER inspect $commit | tr -d '\"' | grep 'Created\|Author\|Comment')" 
    echo "$content" 
done 

快照用法:

enter image description here

+2

感謝。但要清楚的是:沒有內置的方式來列出docker鏡像的提交?! – Anto 2015-01-21 18:29:44

4

可以使用泊塢窗history命令:

$ docker history <image hash> 

輸出示例:

IMAGE    CREATED    CREATED BY  SIZE   COMMENT 
02c473b152e3  9 days ago   /bin/bash   1.577 kB  modified init.sh 
39a27fe266c4  9 days ago   /bin/bash   1.472 kB  modified init.sh 
1a8dae63b9fe  9 days ago   /bin/bash   1.457 kB  modified init.sh 
+0

當我做'碼頭歷史',我沒有得到COMMENT欄。我不知道這是爲什麼。 – 2016-06-23 09:31:20

+0

這是一個新功能嗎?它適用於我,是一條線,似乎回答了這個問題,只使用我的(我認爲標準的)碼頭安裝...但它只有一個投票。 – 2017-01-11 19:05:17

+0

此功能已經存在了一段時間。 – Vasily802 2017-01-11 19:20:24