欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

docker啟動數(shù)據(jù)丟失(Docker啟動)

洪振霞1年前8瀏覽0評論

最近在使用Docker進行應(yīng)用部署的時候,發(fā)現(xiàn)了一個比較嚴重的問題,就是在容器重新啟動的時候有一些數(shù)據(jù)會丟失,這給我們的應(yīng)用帶來了很大的麻煩。

初步排查后發(fā)現(xiàn),原來是Docker自身機制導(dǎo)致的。當(dāng)我們在容器內(nèi)創(chuàng)建了一些數(shù)據(jù)或者文件時,在容器重新啟動的時候,這些數(shù)據(jù)并不會自動保存到鏡像中,而是會被自動清理掉,導(dǎo)致數(shù)據(jù)的丟失。

// 創(chuàng)建數(shù)據(jù)
$docker run -v /data --name data-container busybox touch /data/file.txt
// 查看數(shù)據(jù)
$docker run --volumes-from data-container busybox ls /data
file.txt
// 重啟容器
$docker restart data-container
// 查看數(shù)據(jù)
$docker run --volumes-from data-container busybox ls /data

可以看到,在重啟容器后,我們在之前創(chuàng)建的/data目錄下的file.txt文件已經(jīng)不見了。

所以在使用Docker時,在容器中創(chuàng)建數(shù)據(jù)時需要謹慎,最好將數(shù)據(jù)保存到外部目錄中。同時,在啟動容器時可以使用-v參數(shù)將外部目錄綁定到容器內(nèi)部,這樣就可以避免數(shù)據(jù)的丟失了。

// 創(chuàng)建數(shù)據(jù)
$docker run -v /data:/app/data --name data-container busybox touch /app/data/file.txt
// 查看數(shù)據(jù)
$docker run --volumes-from data-container busybox ls /app/data
file.txt
// 重啟容器
$docker restart data-container
// 查看數(shù)據(jù)
$docker run --volumes-from data-container busybox ls /app/data
file.txt

可以看到,在使用-v參數(shù)綁定外部目錄后,容器內(nèi)部的數(shù)據(jù)不僅不會丟失,而且可以持久化到外部目錄中,這對我們的數(shù)據(jù)安全是很重要的。