1. 程式人生 > >docker容器和資料庫資料分離

docker容器和資料庫資料分離

我用的是mysql資料庫

因為我在docker容器裡已經安裝好一個mysql伺服器,我需要的是/var/lib/mysql下的資料。

1.執行容器,並掛載本地一個空目錄到容器中的非/var/lib/mysql目錄下,docker容器中在被掛載目錄下修改會同步到本地目錄中(舉例說你掛載/home/xxx/目錄到docker容器中的/root/tmp/目錄下,當你進入docker容器並修改/root/tmp目錄下的內容時會被同步本地/home/xxx/目錄下,相當於就是在修改本地的/home/xxx/目錄!)

2.進入容器並將容器中的/var/lib/mysql/目錄下的內容複製到/root/tmp/目錄下(命令:cp -R /var/lib/mysql/  /root/tmp/),並遞迴修改目標檔案(/root/tmp/mysql/)的屬主/組為mysql

!,這點很重要,不然以後掛載到容器中會導致mysql服務起不來;

3.退出容器,然後去檢視/home/xxx/會發現多出來一個mysql目錄中,檢視mysql下的檔案屬性,你會看到owner會變成一個反正我不知道的使用者,我的是lxd,不知道是不是固定的。保持這個樣子不要手賤修改它;

4.之後就可以docker run的時候掛載本地的/home/xxx/mysql/到容器中的/var/lib/mysql/下了,docker容器是暫存的,但是隻要修改了資料庫中的東西(即修改了/var/lib/mysql/下的東西)就會同步到本地的/home/xxx/mysql/目錄下,成功實現分離。這樣也更安全。

新增1個docker容器執行的小TIPS,進入容器後,如果exit會直接停掉容器,裡面的服務也會停掉,可以使用CTRL+P然後CTRL+Q來掛起容器保證服務正常。

相關推薦

docker容器資料庫資料分離

我用的是mysql資料庫 因為我在docker容器裡已經安裝好一個mysql伺服器,我需要的是/var/lib/mysql下的資料。 1.執行容器,並掛載本地一個空目錄到容器中的非/var/lib/mysql目錄下,docker容器中在被掛載目錄下修改會同步到本地目錄中(舉

Docker容器資料視覺化管理工具Flocker

Flocker 可輕鬆實現 Docker 容器及其資料的管理。這是一個數據卷管理器和多主機的 Docker 叢集管理工具,你可以通過它來控制資料。可用來在 Docker 中執行你的資料庫、查詢和 K/V 儲存,並在應用中輕鬆使用這些服務。 Flocker 同時也提供了 API 和命令列工具來進行功能的操

Docker02 Docker初識:第一個Docker容器Docker鏡像

gen ech current aer digest 第一個 -- 文件 展示 目錄 [TOC] 一、第一個Docker容器 使用docker run 命令時,如果在本地沒有改鏡像,那麽會直接重Docker Hub(一個官方的鏡像庫)中拉取鏡像。 docke

關於docker容器鏡像的區別

註冊 sql 運用 tps 參數 history 暫停 use src 引自:https://blog.csdn.net/shenmerenya/article/details/78522206 docker的整個生命周期有三部分組成:鏡像(image)+容器(contai

10張圖帶你深入理解Docker容器鏡像-轉

轉換 AS pos run IT tree 很難 的區別 write 轉載:http://dockone.io/article/783 這篇文章希望能夠幫助讀者深入理解Docker的命令,還有容器(container)和鏡像(image)之間的區別,並深入探討容器和運行

CentOS7修改Docker容器鏡像默認存儲位置

user lB 修改 targe font 停止 style top ecs 1. 停止docker服務# systemctl stop docker2. 修改docker服務啟動文件# vim /etc/systemd/system/multi-user.target.w

docker 容器鏡像理解

文本文 inux 新的 理解 docker -- 開始 str 查找 1、鏡像是Docker容器的基石,容器是鏡像的運行實例,有了鏡像才能啟動容器。容器和鏡像是一對一的,一個容器裏就運行一個鏡像。 1、base鏡像----提供了一個基本的操作系統環境,用戶可以根據需要安

Docker 技巧之刪除Docker容器映象

公司業務在生產環境100多臺伺服器上用了docker,已經有大半年了,可是最近發現,每個伺服器上的各種映象好多好亂,就想批量刪除映象,需要的來看一下把。 刪除所有未執行 Docker 容器 docker rm $(docker ps -a -q) 刪除所有 Docker 映象 刪除所

docker 原理 docker容器映象區別

docker容器和映象區別   這篇文章希望能夠幫助讀者深入理解Docker的命令,還有容器(container)和映象(image)之間的區別,並深入探討容器和執行中的容器之間的區別。  當我對Docker技術還是一知半解的時候,我發現

docker容器與大資料元件的衝突點

1.容器裡面安裝spark,外面的程式(安裝spark主機的容器)會連線不上叢集。理由:這個元件用的akka,連線上叢集,會提示: akka.ErrorMonitor: dropping message [class akka.actor.ActorSelectionMessage] for non-loc

web伺服器資料庫伺服器分離的優勢

        一般我們伺服器都是分開的,網頁伺服器、資料伺服器單獨配置。 web伺服器不掉,那麼就可以正常使用,data伺服器掉了,那麼web還可以堅持一會。 如果是web伺服器掉了,那麼就上不去了,不過有一些設定有web伺服器掉了就啟動data中的備份web模擬

Docker 容器內新增資料卷的2種方式

文章目錄 1、容器資料卷是什麼? 2、`容器內` 新增資料卷的2種方式 3、直接命令新增 3.1、命令 3.2、檢視資料卷是否掛載成功 3.3、容器和宿主機之間資料共享 3.3、容器停止退出後,主機修改後資料是否同步

定時備份指令碼分享(網站資料資料庫資料

1)網站資料備份 將網站資料/var/www/vhost/www.hqsb.com和/var/www/vhost/www.huanqiu.com分別備份到: /Data/code-backup/www.hqsb.com和/Data/code-backup/www.huanqiu.com下。 &nbs

Docker容器主機如何互相拷貝傳輸檔案

一、說明 日常工作中我們常常會遇到容器與宿主機之間的檔案拷貝,今天我就專門介紹如何使用docker的cp命令。 一、語法 sudo docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH|- sudo docker cp

RAID重組資料庫資料的修復與驗證過程小記

背景介紹:   IBM DS5020 光纖儲存。儲存上一共16塊FC硬碟,單盤容量600G。儲存前面板10號和13號硬碟亮***故障燈,儲存對映到redhat上的卷掛載不上,業務崩潰。 開始工作:   通過IBM storage manager連線到儲存檢視當前儲存狀態,儲

docker 容器映象的匯出匯入及遷移

(1)容器的匯出匯入及遷移:(把容器匯出為檔案)匯出 docker export [--help] [-o|--output[=""]] CONTAINER # docker export angry_bell > angry_bell.tar # docker exp

如何在docker容器宿主機之間複製檔案

直接上程式碼 sudo docker cp txcrm2:/home/log/production.log /system/logs ##仔細看 txcrm2是映象id ,後面就是檔案路徑

Docker容器映象儲存機制—images—目錄樹結構

http://ju.outofmemory.cn/entry/114344 Docker的儲存機制採用了非常靈活的模組化設計,目前支援5種儲存引擎,分別為aufs、btrfs、device mapper、vfs和overlay。它們的共同特點都是實現了graphdriver.

啟動或刪除Docker容器映象

基礎命令 1.檢視正在執行的容器 docker ps 2.檢視所有容器, -a檢視所有容器, -l檢視最新建立的容器, -n=x,檢視最後建立的x個容器 docker ps -a 3

如何遷移docker容器映象的預設路徑

參考連結: 主要步驟: 1、建立docker配置檔案。 2、拷貝原來的目錄/var/lib/docker 3、建立docker-proxy和docker-runc的連結檔案  ln -s /usr/libexec/docker/docker-proxy-cu