欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
遷移 Docker 容器儲存位置

本文使用「署名 4.0 國際 (CC BY 4.0)」許可協(xié)議,歡迎轉載、或重新修改使用,但需要注明來(lái)源。 署名 4.0 國際 (CC BY 4.0)

本文作者: 蘇洋

創(chuàng )建時(shí)間: 2019年07月14日
統計字數: 3500字
閱讀時(shí)間: 7分鐘閱讀


遷移 Docker 容器儲存位置

這篇文章初稿是寫(xiě)在遷移服務(wù)器上的 GitLab 發(fā)布后,因為各種原因(忙碌+拖延癥),一直躺在草稿箱種,考慮到使用容器的同學(xué)越來(lái)越多,系統減肥、數據遷移擴容類(lèi)數據需求還是有的,所以趁著(zhù)周末重新整理了一下這篇文章。

一般來(lái)說(shuō)我們需要將系統磁盤(pán)和應用數據盤(pán)進(jìn)行分離,除了能夠獲得更好的性能,最關(guān)鍵的還是能夠讓數據更安全可靠:多數云服務(wù)數據盤(pán)支持備份快照、并且支持大容量 SSD 盤(pán)。

寫(xiě)在前面

掛載數據盤(pán),可以參考 早些時(shí)候的一篇博客,這里不做過(guò)的贅述,為了方便描述,我這里使用一臺新的主機作為演示,順手 docker pull 下載了一些常用鏡像。

先使用 df 了解下當前機器的分區狀況。

# df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            2.0G     0  2.0G   0% /dev
tmpfs           395M  5.3M  390M   2% /run
/dev/vda1        40G  8.3G   30G  22% /
tmpfs           2.0G     0  2.0G   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           2.0G     0  2.0G   0% /sys/fs/cgroup
/dev/vdb1        20G   45M   19G   1% /data
tmpfs           395M     0  395M   0% /run/user/0

可以看到系統盤(pán)有 40G,掛載在 / 根目錄,設備是 /dev/vda1,而數據盤(pán)有20G,掛載在 /data (個(gè)人習慣),設備為 /dev/vdb1。

如果是老機器,有運行中的容器,可能會(huì )看到類(lèi)似下面的輸出。

overlay         196G   24G  163G  13% /var/lib/docker/overlay2/69e985e9fbc2bbaee2fbdcd81c514d64c4ed9862233bf4797a75ac10df80ed1e/merged
shm              64M  4.0K   64M   1% /var/lib/docker/containers/14777d5d02f2600ea134a8eff061dc4d2fd440b747c936da6024386f457a9c2c/mounts/shm

在遷移之前,我們需要了解默認的容器數據保存位置。

# docker info | grep "Docker Root Dir"
Docker Root Dir: /var/lib/docker

通過(guò) docker info 我們可以看到默認的安裝位置在 /var/lib/docker,沒(méi)錯,默認是在系統盤(pán),隨著(zhù)下載鏡像越來(lái)越多,構建鏡像、運行容器越來(lái)越多,系統盤(pán)可能會(huì )迅速被它蠶食而發(fā)生一些意料之外的事情: 系統無(wú)法啟動(dòng)、或者嚴重變慢,所以強烈建議對它進(jìn)行遷移。

開(kāi)始遷移

考慮到有一些同學(xué)并不是新機器,所以這里簡(jiǎn)單啟動(dòng)一個(gè) Nginx 容器,來(lái)模擬“有數據”狀態(tài),幫助我們驗證遷移結果。

docker run -d -p 8080:80 nginx

Nginx 啟動(dòng)之后,我們使用 curl 驗證服務(wù)是否正常。

# curl 127.0.0.1:8080
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
    body {
        width: 35em;
        margin: 0 auto;
        font-family: Tahoma, Verdana, Arial, sans-serif;
    }
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p>

<p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a>.<br/>
Commercial support is available at
<a href="http://nginx.com/">nginx.com</a>.</p>

<p><em>Thank you for using nginx.</em></p>
</body>
</html>

接著(zhù)使用 du 命令來(lái)看看,上小節使用 docker info 了解到的 docker 默認數據目錄有多大。

# du -hs /var/lib/docker
4.3G/var/lib/docker

如果你確定你的鏡像都已經(jīng)妥善保存好、或者用的都是公開(kāi)的鏡像,容器實(shí)例中沒(méi)有存儲特別的東西,可以考慮先執行 docker system prune 給 docker 數據目錄先減個(gè)肥,再進(jìn)行遷移。

要進(jìn)行數據遷移,需要先暫停 docker 服務(wù)。

service docker stop

創(chuàng )建遷移目錄(用來(lái)放新數據的目錄),我個(gè)人習慣將可備份的用戶(hù)數據存放于應用分區 /data 下。

mkdir -p /data/docker/

然后使用萬(wàn)能的 rsync 對數據進(jìn)行遷移。

rsync -avz /var/lib/docker/ /data/docker

在長(cháng)長(cháng)的屏幕日志滾動(dòng)之后,你將會(huì )看到類(lèi)似下面的輸出:

docker/tmp/
docker/trust/
docker/volumes/
docker/volumes/metadata.db

sent 1,514,095,568 bytes  received 3,096,373 bytes  4,998,984.98 bytes/sec
total size is 3,955,563,885  speedup is 2.61

數據就這樣遷移完畢了,完整性由 rsync 保證。接下來(lái)要修改 docker 的配置,讓 docker 從新的位置進(jìn)行數據加載和存儲。

編輯 /etc/docker/daemon.json 配置文件,如果沒(méi)有這個(gè)文件,那么需要自己創(chuàng )建一個(gè),根據上面的遷移目錄,基礎配置如下:

{
    "data-root": "/data/docker"
}

如果你之前修改過(guò) docker mirror (其他同理),那么你的配置需要修改為這個(gè)樣子:

{
    "data-root": "/data/docker",
    "registry-mirrors": [
        "http://YOUR_MIRROR_LINK"
    ]
}

將容器服務(wù)啟動(dòng)起來(lái)。

service docker start

使用文章開(kāi)頭的命令再次驗證下 docker 數據存儲設置,可以看到配置已經(jīng)生效。

# docker info | grep "Docker Root Dir"
Docker Root Dir: /data/docker

還記得這小節開(kāi)頭提到的 Nginx 容器嘛,我們將它重新啟動(dòng),來(lái)驗證服務(wù)是否可用,先找到這個(gè)容器的“尸體”。

# docker ps -a
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                      PORTS               NAMES
fd9b79ae8574        nginx               "nginx -g 'daemon of…"   44 minutes ago      Exited (0) 31 minutes ago                       admiring_yalow

接著(zhù)使用容器基礎命令將實(shí)例啟動(dòng)。

docker start fd9b79ae8574

最后再使用 curl 驗證一下結果:

# curl 127.0.0.1:8080
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
    body {
        width: 35em;
        margin: 0 auto;
        font-family: Tahoma, Verdana, Arial, sans-serif;
    }
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p>

<p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a>.<br/>
Commercial support is available at
<a href="http://nginx.com/">nginx.com</a>.</p>

<p><em>Thank you for using nginx.</em></p>
</body>
</html>

至此,遷移就大功告成啦。

對了,你還記得我們最開(kāi)始看到的 /var/lib/docker 目錄嘛,它現在已經(jīng)完全無(wú)用了,可以使用 rm -rf /var/lib/docker 將它清理掉啦。

最后

我一直以為這篇文章之前寫(xiě)完發(fā)布了,然鵝前幾天重新配置新服務(wù)器的時(shí)候,卻發(fā)現這篇文章一直安靜的待在編輯器草稿箱里,安靜的躺了快一年…

看來(lái)還是要多給自己下小任務(wù),每周清理下之前的筆記和博客草稿呀。

—EOF

本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
Docker 持久存儲介紹(十三)
docker中修改鏡像容器的存放目錄
docker將數據從宿主機掛載到容器的方式(一)
用ELK工具收集rancher1.6上容器日志
docker部署LNMP架構
使用docker鏡像運行一個(gè)容器的操作…
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久