真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

linux拷貝命令到容器,linux拷貝文件到其他服務(wù)器命令

linux服務(wù)器端有一個(gè)mysql,如何部署到docker容器里

步驟1:為我們的容器創(chuàng)建第一個(gè)鏡像

創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站制作、獨(dú)山網(wǎng)絡(luò)推廣、小程序設(shè)計(jì)、獨(dú)山網(wǎng)絡(luò)營銷、獨(dú)山企業(yè)策劃、獨(dú)山品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供獨(dú)山建站搭建服務(wù),24小時(shí)服務(wù)熱線:13518219792,官方網(wǎng)址:www.cdcxhl.com

# 以 centos 鏡像作為基礎(chǔ)鏡像,我們啟動(dòng)自己的容器并在其中執(zhí)行/bin/bash命令

# 注:-t -i 參數(shù)用于創(chuàng)建一個(gè)虛擬的命令行。

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

現(xiàn)在我們已經(jīng)成功的運(yùn)行了自己的第一個(gè)容器,并且進(jìn)入到容器的命令行界面中。在容器中,我們執(zhí)行下面的命令:

yum -y update # 更新軟件包

yum install which # 安裝which命令

yum install git # 安裝Git

安裝完成后,按 Ctrl + d 來退出容器的命令行。

# 執(zhí)行sudo docker ps -a,可以看到被我們終止的容器

CONTAINER ID IMAGE COMMAND CREATED……

da9031d3568f centos:6.4 /bin/bash 5 minutes ago…..

把我們所做的改變提交到一個(gè)新的容器:

# 這里我們創(chuàng)建一個(gè)自己的基礎(chǔ)容器,容器中安裝好了文章中所需的常用工具。讀者的容器 id 可能與文章中的有所不同,以上一步 docker ps -a 的結(jié)果為準(zhǔn)。

sudo docker commit da90 custom/base

容器成功提交后,執(zhí)行 sudo docker images ,我們會(huì)看到剛才提交的容器(如下面的結(jié)果所示)。我們就以這個(gè)容器為基礎(chǔ)容器,再來創(chuàng)建一個(gè)新的容器。

REPOSITORY TAG IMAGE ID CREATED

custom/base latest 05b6cecd370b 2 minutes ago

centos 6.4 539c0211cd76 10 months ago

centos latest 539c0211cd76 10 months ago…

步驟2:創(chuàng)建新的容器,并安裝 apache

# 以 custom/base 容器為基礎(chǔ),運(yùn)行一個(gè)新的容器。

sudo docker run -t -i custom/base /bin/bash

# 安裝 httpd

yum install httpd

步驟3:再次提交新的容器

按 Ctrl + d 來退出容器的命令行,然后執(zhí)行命令:

# 這個(gè)命令會(huì)把步驟2中我們安裝 httpd 帶來的改變提交到新的名為 custom/httpd 的容器鏡像中。你的容器 id 可能會(huì)和文章中有所不同,以 sudo docker ps -a 命令的結(jié)果為準(zhǔn)。

sudo docker commit aa6e2fc0b94c custom/httpd

你應(yīng)該已經(jīng)發(fā)現(xiàn)了,我們創(chuàng)建了一個(gè)帶有 http 服務(wù)器并可以復(fù)用的容器鏡像。你可以根據(jù)這種思想,為自己所需的每個(gè)組件都創(chuàng)建一個(gè)容器,然后把這些容器復(fù)用于開發(fā)環(huán)境或者生產(chǎn)環(huán)境。

步驟7:運(yùn)行 http 服務(wù)器

# -v will Mount a volume from VM to the container which was also shared from host to Vagrant VM.

# -v 參數(shù)把主機(jī)共享給虛擬機(jī)的一個(gè)卷掛載到容器中

# -p forward VM port 80 to container port 80; VM port 80 is mapped to host port 8080 in Vagrantfile

# -p 參數(shù)把虛擬機(jī)的80端口映射到容器的80端口;虛擬機(jī)的80端口在 Vagrantfile 中被綁定到主機(jī)的8080端口,也就是:主機(jī)8080-虛擬機(jī)80-容器80

sudo docker run -t -i -p 80:80 -v /vagrant/htdocs:/var/www/html custom/httpd /bin/bash

# 啟動(dòng) Apache

apachectl -k start

如何在Linux中備份,恢復(fù)和遷移Docker容器

今天,我們將學(xué)習(xí)如何快速地對(duì)Docker容器進(jìn)行快捷備份、恢復(fù)和遷移。Docker是一個(gè)開源平臺(tái),用于自動(dòng)化部署應(yīng)用,以通過快捷的途徑在稱之為容器的輕量級(jí)軟件層下打包、發(fā)布和運(yùn)行這些應(yīng)用。它使得應(yīng)用平臺(tái)獨(dú)立,因?yàn)樗缪萘?Linux上一個(gè)額外的操作系統(tǒng)級(jí)虛擬化的自動(dòng)化抽象層。它通過其組件cgroups和命名空間利用Linux內(nèi)核的資源分離特性,達(dá)到避免虛擬機(jī)開銷的目的。它使得用于部署和擴(kuò)展web應(yīng)用、數(shù)據(jù)庫和后端服務(wù)的大規(guī)模構(gòu)建組件無需依賴于特定的堆?;蚬?yīng)者。

所謂的容器,就是那些創(chuàng)建自Docker鏡像的軟件層,它包含了獨(dú)立的Linux文件系統(tǒng)和開箱即用的應(yīng)用程序。如果我們有一個(gè)在機(jī)器中運(yùn)行著的Docker容器,并且想要備份這些容器以便今后使用,或者想要遷移這些容器,那么,本教程將幫助你掌握在Linux操作系統(tǒng)中備份、恢復(fù)和遷移 Docker容器的方法。

我們?cè)鯓硬拍茉贚inux中備份、恢復(fù)和遷移Docker容器呢?這里為您提供了一些便捷的步驟。

1. 備份容器

首先,為了備份Docker中的容器,我們會(huì)想看看我們想要備份的容器列表。要達(dá)成該目的,我們需要在我們運(yùn)行著Docker引擎,并已創(chuàng)建了容器的Linux機(jī)器中運(yùn)行 docker ps 命令。

# docker ps

Docker Containers List

在此之后,我們要選擇我們想要備份的容器,然后去創(chuàng)建該容器的快照。我們可以使用 docker commit 命令來創(chuàng)建快照。

# docker commit -p 30b8f18f20b4 container-backup

Docker Commit

該命令會(huì)生成一個(gè)作為Docker鏡像的容器快照,我們可以通過運(yùn)行 docker images 命令來查看Docker鏡像,如下。

# docker images

Docker Images

正如我們所看見的,上面做的快照已經(jīng)作為Docker鏡像保存了。現(xiàn)在,為了備份該快照,我們有兩個(gè)選擇,一個(gè)是我們可以登錄進(jìn)Docker注冊(cè)中心,并推送該鏡像;另一個(gè)是我們可以將Docker鏡像打包成tar包備份,以供今后使用。

如果我們想要在Docker注冊(cè)中心上傳或備份鏡像,我們只需要運(yùn)行 docker login 命令來登錄進(jìn)Docker注冊(cè)中心,然后推送所需的鏡像即可。

# docker login

Docker Login

# docker tag a25ddfec4d2a arunpyasi/container-backup:test# docker push arunpyasi/container-backup

Docker Push

如果我們不想備份到docker注冊(cè)中心,而是想要將此鏡像保存在本地機(jī)器中,以供日后使用,那么我們可以將其作為tar包備份。要完成該操作,我們需要運(yùn)行以下 docker save 命令。

# docker save -o ~/container-backup.tar container-backup

taking tarball backup

要驗(yàn)證tar包是否已經(jīng)生成,我們只需要在保存tar包的目錄中運(yùn)行 ls 命令即可。

2. 恢復(fù)容器

接下來,在我們成功備份了我們的Docker容器后,我們現(xiàn)在來恢復(fù)這些制作了Docker鏡像快照的容器。如果我們已經(jīng)在注冊(cè)中心推送了這些Docker鏡像,那么我們僅僅需要把那個(gè)Docker鏡像拖回并直接運(yùn)行即可。

# docker pull arunpyasi/container-backup:test

Docker Pull

但是,如果我們將這些Docker鏡像作為tar包文件備份到了本地,那么我們只要使用 docker load 命令,后面加上tar包的備份路徑,就可以加載該Docker鏡像了。

# docker load -i ~/container-backup.tar

現(xiàn)在,為了確保這些Docker鏡像已經(jīng)加載成功,我們來運(yùn)行 docker images 命令。

# docker images

在鏡像被加載后,我們將用加載的鏡像去運(yùn)行Docker容器。

# docker run -d -p 80:80 container-backup

Restoring Docker Tarball

3. 遷移Docker容器

遷移容器同時(shí)涉及到了上面兩個(gè)操作,備份和恢復(fù)。我們可以將任何一個(gè)Docker容器從一臺(tái)機(jī)器遷移到另一臺(tái)機(jī)器。在遷移過程中,首先我們將把容器備份為Docker鏡像快照。然后,該Docker鏡像或者是被推送到了Docker注冊(cè)中心,或者被作為tar包文件保存到了本地。如果我們將鏡像推送到了Docker注冊(cè)中心,我們簡單地從任何我們想要的機(jī)器上使用 docker run 命令來恢復(fù)并運(yùn)行該容器。但是,如果我們將鏡像打包成tar包備份到了本地,我們只需要拷貝或移動(dòng)該鏡像到我們想要的機(jī)器上,加載該鏡像并運(yùn)行需要的容器 即可。

怎么linux本地mysql放到docker中?

如果對(duì)MySQL比較熟悉,那么可以使用MySQL異機(jī)遷移的方法:

先確定MySQL的運(yùn)行系統(tǒng)、發(fā)行版、版本號(hào),以前的配置文件。

根據(jù)以上信息在Docker環(huán)境下新建一臺(tái)全新的MySQL。

根據(jù)業(yè)務(wù)需要實(shí)施停機(jī)遷移/在線遷移,將數(shù)據(jù)遷入Docker內(nèi)的MySQL。

停機(jī)遷移:直接拷貝數(shù)據(jù)文件(物理遷移)、全量Dump導(dǎo)出(邏輯備份遷移)、xtraback備份(物理備份遷移)

在線遷移:將新庫作為從庫加入集群,完成同步后fo切換,原主庫下線。

如果對(duì)Docker比較熟悉,可以使用Docker整機(jī)遷移的方法:

整機(jī)虛擬化直接作為一個(gè)鏡像在Docker內(nèi)運(yùn)行。

這種方法雖然簡單,但過程漫長而且運(yùn)行時(shí)性能損耗非常大,也容易出問題,不是很推薦。

Linux系統(tǒng)Docker命令怎么用

下面是安裝 Docker 客戶端并在上面運(yùn)行容器的簡單步驟。

1. 下載 Boot2Docker

在我們開始安裝之前,我們需要 Boot2Docker 的可執(zhí)行文件??梢詮?它的 Github 下載最新版本的 Boot2Docker。在這篇指南中,我們從網(wǎng)站中下載版本 v1.6.1。我們從那網(wǎng)頁中用我們喜歡的瀏覽器或者下載管理器下載了名為 docker-install.exe 的文件。

2. 安裝 Boot2Docker

現(xiàn)在我們運(yùn)行安裝文件,它會(huì)安裝 Window Docker 客戶端、用于 Windows 的 Git(MSYS-git)、VirtualBox、Boot2Docker Linux ISO 以及 Boot2Docker 管理工具,這些對(duì)于開箱即用地運(yùn)行全功能的 Docker 引擎都至關(guān)重要。

3. 運(yùn)行 Boot2Docker

安裝完成必要的組件之后,我們從桌面上的“Boot2Docker Start”快捷方式啟動(dòng) Boot2Docker。它會(huì)要求你輸入以后用于驗(yàn)證的 SSH 密鑰。然后會(huì)啟動(dòng)一個(gè)配置好的用于管理在虛擬機(jī)中運(yùn)行的 Docker 的 unix shell。

為了檢查是否正確配置,運(yùn)行下面的 docker version 命令。

docker version

4. 運(yùn)行 Docker

由于 Boot2Docker Start 自動(dòng)啟動(dòng)了一個(gè)已經(jīng)正確設(shè)置好環(huán)境變量的 shell,我們可以馬上開始使用 Docker。請(qǐng)注意,如果我們要將 Boot2Docker 作為一個(gè)遠(yuǎn)程 Docker 守護(hù)進(jìn)程,那么不要在 docker 命令之前加 sudo。

現(xiàn)在,讓我們來試試 hello-world 例子鏡像,它會(huì)下載 hello-world 鏡像,運(yùn)行并輸出 "Hello from Docker" 信息。

$ docker run hello-world

5. 使用命令提示符(CMD) 運(yùn)行 Docker

現(xiàn)在,如果你想開始用命令提示符使用 Docker,你可以打開命令提示符(CMD.exe)。由于 Boot2Docker 要求 ssh.exe 在 PATH 中,我們需要在命令提示符中輸入以下命令使得 %PATH% 環(huán)境變量中包括 Git 安裝目錄下的 bin 文件夾。

set PATH=%PATH%;"c:\Program Files (x86)\Git\bin"

運(yùn)行上面的命令之后,我們可以在命令提示符中運(yùn)行 boot2docker start 啟動(dòng) Boot2Docker 虛擬機(jī)。

boot2docker start

注意: 如果你看到 machine does no exist 的錯(cuò)誤信息,就運(yùn)行 boot2docker init 命令。

然后復(fù)制上圖中控制臺(tái)標(biāo)出命令到 cmd.exe 中為控制臺(tái)窗口設(shè)置環(huán)境變量,然后我們就可以像平常一樣運(yùn)行 docker 容器了。

6. 使用 PowerShell 運(yùn)行 Docker

為了能在 PowerShell 中運(yùn)行 Docker,我們需要啟動(dòng)一個(gè) PowerShell 窗口并添加 ssh.exe 到 PATH 變量。

$Env:Path="${Env:Path};c:\Program Files (x86)\Git\bin"

運(yùn)行完上面的命令,我們還需要運(yùn)行

boot2docker start

這會(huì)打印用于設(shè)置環(huán)境變量連接到虛擬機(jī)內(nèi)部運(yùn)行的 Docker 的 PowerShell 命令。我們只需要在 PowerShell 中運(yùn)行這些命令就可以和平常一樣運(yùn)行 docker 容器。

7. 用 PUTTY 登錄

Boot2Docker 會(huì)在%USERPROFILE%.ssh 目錄生成和使用用于登錄的公共和私有密鑰,我們也需要使用這個(gè)文件夾中的私有密鑰。私有密鑰需要轉(zhuǎn)換為 PuTTY 的格式。我們可以通過 puttygen.exe 實(shí)現(xiàn)。

我們需要打開 puttygen.exe 并從 %USERPROFILE%.ssh\id_boot2docker 中導(dǎo)入("File"-"Load" 菜單)私鑰,然后點(diǎn)擊 "Save Private Key"。然后用保存的文件通過 PuTTY 用 docker@127.0.0.1:2022 登錄。

8. Boot2Docker 選項(xiàng)

Boot2Docker 管理工具提供了一些命令,如下所示。

linux下docker容器存放磁盤空間遷移

docker在centOS下默認(rèn)會(huì)安裝在/var/lib/docker/目錄下, 這個(gè)目錄的容量不大,創(chuàng)建的容器或鏡像多了就無法使用了。

目錄遷移記錄如下(更改到/home/docker下):

1、停止docker服務(wù)。

2、創(chuàng)建新的docker目錄,執(zhí)行命令df -h,找一個(gè)大的磁盤。我的是放在/home目錄下面,我的/home目錄大小有900G。 我在 /home目錄下面建了 /home/docker/lib目錄,執(zhí)行的命令是:

3、遷移/var/lib/docker目錄下面的文件到 /home/docker/lib下面

注意:如果文件內(nèi)容很多的話,為了確保成功最好是一個(gè)文件一個(gè)文件的拷貝。如果在拷貝過程中報(bào)“設(shè)備上沒有空間”的錯(cuò)誤,就使用mv剪切。

4、修改docker配置(/etc/systemd/system/docker.service.d/devicemapper.conf),在文件末添加 --graph=/home/docker/lib

devicemapper.conf文件的內(nèi)容如下:

注意:如果/etc/systemd/system/docker.service.d/devicemapper.conf,這個(gè)路徑找不到的話,就新建,新建之后加入內(nèi)容,沒有地址的話就可以去掉”--insecure-registry=地址”。

5、重載配置,重啟docker

6、啟動(dòng)成功后,確定容器沒問題后刪除/var/lib/docker/目錄中的文件,然后就OK了。


分享題目:linux拷貝命令到容器,linux拷貝文件到其他服務(wù)器命令
當(dāng)前路徑:http://weahome.cn/article/hoepdj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部