欧美free性护士vide0shd,老熟女,一区二区三区,久久久久夜夜夜精品国产,久久久久久综合网天天,欧美成人护士h版

首頁綜合 正文
目錄

柚子快報激活碼778899分享:運維 Docker入門

柚子快報激活碼778899分享:運維 Docker入門

http://yzkb.51969.com/

目錄

一、Docker 簡介

Docker的應(yīng)用場景

Docker 的優(yōu)點

Docker的架構(gòu)

Docker 和虛擬機的區(qū)別

① 關(guān)于Docker是什么?

② 作用&優(yōu)點?

③ 對比傳承虛擬機

?④ 三個核心概念

二、CentOs7 安裝 Docker及環(huán)境配置?

三、Docker阿里云鏡像倉庫配置?

① docker ps 是正在運行的容器

② docker ps -a 不管是正在運行的還是沒有在運行都容器都顯示出來

1、登錄進(jìn)入阿里云鏡像服務(wù)中心,獲取鏡像地址

2、在/etc/docker目錄下找到在daemon.json文件(沒有就新建),將下面內(nèi)容寫入

?3、重啟Daemon

4、重啟docker服務(wù)?

?5、測試

?四、Docker常用命令

1、Docker基本命令?

① 啟動 Docker

② 停止 Docker

③ 重啟 Docker

④ 開機啟動 Docker

⑤ 查看Docker概要信息

⑥ 查看 Docker 幫助文檔

⑦ 查看 Docker版本信息?

2、Docker 鏡像常用命令?

①?docker images 查看本機所有鏡像?

②、docker search 搜索鏡像?

③、docker pull 下載鏡像??

?④、docker rmi 刪除鏡像

⑤、docker rmi -f 不管是使用還是停用狀態(tài)都可以刪除?

?3、Docker 容器常用命令

①、Docker創(chuàng)建并啟動容器

② Docker 列出容器

③ Docker 退出容器?

④ Docker 進(jìn)入容器

⑤ Docker 啟動容器

?⑥ Docker 重啟容器

⑦ Docker 停止容器?

⑧ Docker 刪除容器

⑨ Docker 容器日志?

一、Docker 簡介

新一代虛擬化技術(shù),容器技術(shù)。????????

下面的是官方的簡介。?

Docker 是一個開源的應(yīng)用容器引擎,基于 Go 語言 并遵從Apache2.0協(xié)議開源。

Docker 可以讓開發(fā)者打包他們的應(yīng)用以及依賴包到一個輕量級、可移植的容器中,然后發(fā)布到任何流行的 Linux 機器上,也可以實現(xiàn)虛擬化。

容器是完全使用沙箱機制,相互之間不會有任何接口(類似 iPhone 的 app),更重要的是容器性能開銷極低。

Docker 從 17.03 版本之后分為 CE(Community Edition: 社區(qū)版) 和 EE(Enterprise Edition: 企業(yè)版),我們用社區(qū)版就可以了。

Docker官網(wǎng):Docker: Accelerated, Containerized Application DevelopmentDocker is a platform designed to help developers build, share, and run modern applications. We handle the tedious setup, so you can focus on the code.https://www.docker.com/

Docker的應(yīng)用場景

Web 應(yīng)用的自動化打包和發(fā)布。

自動化測試和持續(xù)集成、發(fā)布。

在服務(wù)型環(huán)境中部署和調(diào)整數(shù)據(jù)庫或其他的后臺應(yīng)用。

從頭編譯或者擴展現(xiàn)有的 OpenShift 或 Cloud Foundry 平臺來搭建自己的 PaaS 環(huán)境。

Docker 的優(yōu)點

1、簡化程序:

Docker 讓開發(fā)者可以打包他們的應(yīng)用以及依賴包到一個可移植的容器中,然后發(fā)布到任何流行的 Linux 機器上,便可以實現(xiàn)虛擬化。Docker改變了虛擬化的方式,使開發(fā)者可以直接將自己的成果放入Docker中進(jìn)行管理。方便快捷已經(jīng)是 Docker的最大優(yōu)勢,過去需要用數(shù)天乃至數(shù)周的 任務(wù),在Docker容器的處理下,只需要數(shù)秒就能完成。

2、避免選擇恐懼癥:

如果你有選擇恐懼癥,還是資深患者。那么你可以使用 Docker 打包你的糾結(jié)!比如 Docker 鏡像;Docker 鏡像中包含了運行環(huán)境和配置,所以 Docker 可以簡化部署多種應(yīng)用實例工作。比如 Web 應(yīng)用、后臺應(yīng)用、數(shù)據(jù)庫應(yīng)用、大數(shù)據(jù)應(yīng)用比如 Hadoop 集群、消息隊列等等都可以打包成一個鏡像部署。

3、節(jié)省開支:

一方面,云計算時代到來,使開發(fā)者不必為了追求效果而配置高額的硬件,Docker 改變了高性能必然高價格的思維定勢。Docker 與云的結(jié)合,讓云空間得到更充分的利用。不僅解決了硬件管理的問題,也改變了虛擬化的方式。

Docker的架構(gòu)

Docker 使用客戶端-服務(wù)器 (C/S) 架構(gòu)模式,使用遠(yuǎn)程API來管理和創(chuàng)建Docker容器。

Docker 容器通過 Docker 鏡像來創(chuàng)建。

容器與鏡像的關(guān)系類似于面向?qū)ο缶幊讨械膶ο笈c類。

Docker 面向?qū)ο? 容器 對象 鏡像 類

Docker 鏡像(Images) 是用于創(chuàng)Docker 鏡像建 Docker 容器的模板。 Docker 容器(Container) 容器是獨立運行的一個或一組應(yīng)用。 Docker 客戶端(Client) Docker 客戶端通過命令行或者其他工具使用 Docker API (Develop with Docker Engine API | Docker Documentation) 與 Docker 的守護(hù)進(jìn)程通信。 Docker 主機(Host) 一個者物理或虛擬的機器用于執(zhí)行 Docker 守護(hù)進(jìn)程和容器。 Docker 倉庫(Registry) Docker 倉庫用來保存鏡像,可以理解為代碼控制中的代碼倉庫。 Docker Hub(https://hub.docker.com) 提供了龐大的鏡像集合供使用。 Docker Machine Docker Machine是一個簡化Docker安裝的命令行工具,通過一個簡單的命令行即可在相應(yīng)的平臺上安裝Docker,比如VirtualBox、 Digital Ocean、Microsoft Azure。

Docker 和虛擬機的區(qū)別

Docker是一種輕量級的虛擬化技術(shù),比傳統(tǒng)的虛擬機性能更好。

下圖是虛擬機的體系結(jié)構(gòu):

server?- 表示真實電腦。

Host OS?- 真實電腦的操作系統(tǒng),例如:Windows,Linux

Hypervisor?- 虛擬機平臺,模擬硬件,如VMWare,VirtualBox

Guest OS?- 虛擬機平臺上安裝的操作系統(tǒng),例如CentOS Linux

App?- 虛擬機操作系統(tǒng)上的應(yīng)用,例如nginx

下圖是Docker的體系結(jié)構(gòu):

server?- 表示真實電腦。

Host OS?- 真實電腦的操作系統(tǒng),例如:Windows,Linux

Docker Engine?- 新一代虛擬化技術(shù),不需要包含單獨的操作系統(tǒng)。

App?- 所有的應(yīng)用程序現(xiàn)在都作為Docker容器運行。

這種體系結(jié)構(gòu)的明顯優(yōu)勢是,不需要為虛擬機操作系統(tǒng)提供硬件模擬。所有應(yīng)用程序都作為Docker容器工作,性能更好。

下面是我的理解.

① 關(guān)于Docker是什么?

Docker是一個由Go語言編寫的程序運行的容器(一個容器就相當(dāng)于一個虛擬機),它是完整的一套容器管理系統(tǒng)

② 作用&優(yōu)點?

?Docker的主要用途目前主要有三大類:

1、提供一次性的環(huán)境。比如:本地測試他人的軟件、持續(xù)集成的時候提供單元測試和構(gòu)建的環(huán)境

2、提供彈性的云服務(wù)。因為Docker容器可以隨開隨關(guān),很適合動態(tài)擴容和縮容

3、組建微服務(wù)架構(gòu)。通過多個容器,一臺機器可以跑多個服務(wù),因此在本機就能模擬出微服務(wù)架構(gòu)

使用Docker能使應(yīng)用部署更方便,服務(wù)器同等配置下性能更優(yōu)效果更高...

③ 對比傳承虛擬機

傳統(tǒng)的虛擬機既可以通過硬件模擬來實現(xiàn),也可以通過操作系統(tǒng)軟件來實現(xiàn),而容器技術(shù)則更為優(yōu)雅,它充分利用了操作系統(tǒng)本身已有的機制和特性,可以實現(xiàn)遠(yuǎn)程傳統(tǒng)虛擬機的輕量級虛擬機。

?④ 三個核心概念

1.鏡像:其實就是一個文件,根鏡像就是一個操作系統(tǒng)的鏡像文件,比如:centos Ubuntu

2.容器:容器是基于鏡像存在的,可以把容器看作是一個簡易版的linux環(huán)境

3.倉庫:Docker倉庫類似于代碼倉庫,是Docker集中存放鏡像文件的場所

二、CentOs7 安裝 Docker及環(huán)境配置?

#查看內(nèi)核 uname -r #更新yum源為最新 yum update -y

#如果說本地存在老版本的Docker引擎,那么需要刪除

?yum remove docker ?docker-common docker-selinux docker-engin #安裝Docker所需要的工具包 yum install -y yum-utils device-mapper-persistent-data lvm2 #設(shè)置yum源 yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo #下載安裝Docker yum install docker-ce docker-ce-cli containerd.io -y -y #啟動Docker并且設(shè)置開機自啟動 systemctl start docker systemctl enable docker #檢測Docker是否安裝成功 docker version

Docker從1.13版本之后采用時間線的方式作為版本號,分為社區(qū)版CE和企業(yè)版EE。

社區(qū)版是免費提供給個人開發(fā)者和小型團(tuán)體使用的,企業(yè)版會提供額外的收費服務(wù),比如經(jīng)過官方測試認(rèn)證過的基礎(chǔ)設(shè)施、容器、插件等。

社區(qū)版按照stable和edge兩種方式發(fā)布,每個季度更新stable版本,如17.06,17.09;每個月份更新edge版本,如17.09,17.10。

我們平時用社區(qū)版就足夠了。所以我們安裝社區(qū)版;

我們主要參考:Install Docker Engine on CentOS | Docker Documentation? 來安裝;

注意:我們必須要以root用戶去操作系統(tǒng)。

我們練習(xí)Docker的時候,防止印象其他的一些東西?

我就沒有重新新建一個虛擬機了。?

利用我們的客戶端連接工具連接我們的虛擬機。

我們切換到root用戶

1、Docker 要求 CentOS 系統(tǒng)的內(nèi)核版本高于 3.10 ,查看本頁面的前提條件來驗證你的CentOS 版本是否支持 Docker 。

通過 uname -r 命令查看你當(dāng)前的內(nèi)核版本

uname -r

2、使用 root 權(quán)限登錄 Centos。確保 yum 包更新到最新。

yum update?-y

3、卸載舊版本(如果安裝過舊版本的話)

yum remove docker? docker-common docker-selinux docker-engine

4、安裝需要的軟件包, yum-util 提供yum-config-manager功能,另外兩個是devicemapper驅(qū)動依賴的

安裝Docker所需要的工具包

yum install -y yum-utils device-mapper-persistent-data lvm2

5、設(shè)置yum源

一個是原有的yum的地址,二個是阿里云的鏡像地址,兩個都要運行

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

6、安裝最新版本的Docker

yum install docker-ce docker-ce-cli containerd.io?-y -y

如果出現(xiàn)下面問題

遇到這種情況有兩種做法:

1、沒網(wǎng),試著:ping www.baidu.com

如果顯示沒有連接的話,就說明沒網(wǎng),也就無法使用yum 命令。

2、ping通了的話,還是是用不了yum命令,說明是yum鏡像沒有了,那么就得下載一個來更新。

在安裝完CentOS后一般需要修改yum源,才能夠在安裝更新rpm包時獲得比較理想的速度。國內(nèi)比較快的有163源、sohu源。這里以163源為例子。

A、?cd /etc/yum.repos.d

B、?mv CentOS-Base.repo CentOS-Base.repo.backup

C、wget http://mirrors.163.com/.help/CentOS6-Base-163.repo

D、mv CentOS6-Base-163.repo CentOS-Base.repo

E、yum clean all

最后在使用yum 就可以了。

7、啟動Docker并設(shè)置開機啟動

systemctl start docker

systemctl enable docker

8、驗證Docker 是否安裝成功

docker version

三、Docker阿里云鏡像倉庫配置?

運行??docker run hello-world

本地倉庫未能找到該鏡像,然后去遠(yuǎn)程倉庫尋找以及下載該鏡像;

?我們具體來分析下執(zhí)行原理和過程:?

從左到右 client客戶端,Docker運行主機,遠(yuǎn)程倉庫;

docker build ,pull,run分別是 構(gòu)建,拉取,運行命令,后面再細(xì)講;

中間Docker主機里有 Docker daemon主運行線程,以及Containers容器,容器里可以運行很多實例,(實例是從右側(cè)Images鏡像實例化出來的)Images是存儲再本地的鏡像文件,比如 Redis,Tomat這些鏡像文件;

右側(cè)是Registry鏡像倉庫,默認(rèn)遠(yuǎn)程鏡像倉庫?Docker Hub? 不過是國外主機,下載很慢,不穩(wěn)定,所以我們后面要配置成阿里云倉庫鏡像地址,穩(wěn)定快捷;

運行??docker run hello-world

1.下載一個hello-world的鏡像

2.根據(jù)鏡像實例化一個Docker容器

① docker ps 是正在運行的容器

② docker ps -a 不管是正在運行的還是沒有在運行都容器都顯示出來

3.執(zhí)行容器中功能,即打印語句

執(zhí)行 docker run hello-world 的過程看如下圖例

?當(dāng)我們在去執(zhí)行的時候docker run hello-world的時候就非??炝?/p>

這里我們對比一下第一次跟第二次的區(qū)別:

我們這個Docker的大小是不大的13.3KB都要下這么久的,我們安裝一個mysql都要500兆,這么慢,很不友好,我們先演示一下這個還是沒有換源的,只是單純的從國外的網(wǎng)站把這個mysql的鏡像給下載下來,演示一下這個過程要耗時多長時間,然后我們會發(fā)現(xiàn)這個時間會比較漫長。

在下這個過程中,耗的流量是1G

這里我就終止下載了,下了5分鐘還才下這么點。?

Docker默認(rèn)遠(yuǎn)程倉庫是Docker Hub

比如我們下載一個大點的東西,龜速

由于是國外主機,類似Maven倉庫,慢得一腿,經(jīng)常延遲,破損;

所以我們一般都是配置國內(nèi)鏡像,比如阿里云,網(wǎng)易云等;推薦阿里云,穩(wěn)定點;

配置步驟如下:

1、登錄進(jìn)入阿里云鏡像服務(wù)中心,獲取鏡像地址

進(jìn)入阿里云容器鏡像服務(wù)地址:

https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

2、在/etc/docker目錄下找到在daemon.json文件(沒有就新建),將下面內(nèi)容寫入

vi? 是編輯,當(dāng)我們編輯這個文件不存在的時候,它就會自動給我們創(chuàng)建一個?

cd /etc/docker/

vi daemon.json

?3、重啟Daemon

systemctl daemon-reload

4、重啟docker服務(wù)?

systemctl restart docker

?5、測試

下載mysql

docker pull mysql

?四、Docker常用命令

1、Docker基本命令?

?啟動Docker systemctl start docker 停止Docker systemctl stop docker 重啟Docker systemctl restart docker 開機啟動Docker systemctl enable docker 查看Docker概要信息 docker info 查看Docker幫助文檔 docker --help 查看Docker版本信息 docker version

① 啟動 Docker

systemctl start docker

② 停止 Docker

systemctl stop docker

③ 重啟 Docker

systemctl restart docker

④ 開機啟動 Docker

systemctl enable docker

⑤ 查看Docker概要信息

docker info

⑥ 查看 Docker 幫助文檔

docker --help

⑦ 查看 Docker版本信息?

docker version

2、Docker 鏡像常用命令?

#查看?

#查看本機鏡像

docker images …

#從遠(yuǎn)程鏡像倉庫中搜索鏡像 docker search … #新增

#增加 docker pull …

#推送

docker push … #刪除 docker rmi … docker rmi -f …

①?docker images 查看本機所有鏡像?

docker images

列出本機所有鏡像

REPOSITORY 鏡像的倉庫源 TAG 鏡像的標(biāo)簽(版本)同一個倉庫有多個TAG的鏡像,多個版本;我們用REPOSITORY:TAG來定義不同的鏡像; IMAGE ID 鏡像ID,鏡像的唯一標(biāo)識 CREATE 鏡像創(chuàng)建時間 SIZE 鏡像大小

OPTIONS? 可選參數(shù): -a 顯示所有鏡像(包括中間層) -q 只顯示鏡像ID -qa 可以組合 --digests 顯示鏡像的摘要信息 --no-trunc 顯示完整的鏡像信息?

②、docker search 搜索鏡像?

查看阿里云鏡像中有哪些鏡像

就看的是你配置的鏡像倉庫中的所有跟redis相關(guān)的鏡像它都跟我們查看出來了

docker search redis

和 https://hub.docker.com/ 這里的搜索效果一樣;

OPTIONS可選參數(shù):

--no-trunc 顯示完整的鏡像描述 -s 列出收藏數(shù)不小于指定值的鏡像 --automated 只列出Docker Hub自動構(gòu)建類型的鏡像

③、docker pull 下載鏡像??

docker pull 鏡像名稱:[TAG]

??

注意:不加TAG,默認(rèn)下載最新版本latest

?④、docker rmi 刪除鏡像

⑤、docker rmi -f 不管是使用還是停用狀態(tài)都可以刪除?

測試一下有沒有刪除干凈。

1,刪除單個:docker rmi 鏡像名稱:[TAG]

如果不寫TAG,默認(rèn)刪除最新版本latest

有鏡像生成的容器再運行時候,會報錯,刪除失??;?

?我們需要加 -f 強制刪除

2,刪除多個:docker rmi -f 鏡像名稱1:[TAG] 鏡像名稱2:[TAG]

中間空格隔開

3,刪除全部:docker rmi -f $(docker images -qa)

?3、Docker 容器常用命令

#新增 docker run

#利用守護(hù)進(jìn)程的方式運行容器 docker run -di

#運行容器的同時進(jìn)入容器內(nèi)部 docker run -it

#取名字

#給運行的容器自定義名稱 docker run --name ... 取的名字接上鏡像名字 #查看 docker ps docker ps -a #刪除 docker rm docker rm -f #進(jìn)入容器 docker exec -it tomcat1 /bin/bash

#退出

exit;

Ctrl+p+q

#停止容器

docker stop

#啟動容器

docker start

#重啟

#dockerrestart

①、Docker創(chuàng)建并啟動容器

docker run tomcat:8

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

--name="容器新名字":為容器指定一個名稱;

-i:以交互模式運行容器,通常與-t或者-d同時使用;

-t:為容器重新分配一個偽輸入終端,通常與-i同時使用;

-d: 后臺運行容器,并返回容器ID;

-P: 隨機端口映射,容器內(nèi)部端口隨機映射到主機的端口

-p: 指定端口映射,格式為:主機(宿主)端口:容器端口

?啟動普通容器: docker run --name 別名 鏡像ID??

?啟動交互式容器:? docker run -it --name 別名 鏡像ID? ?來運行一個容器,取別名,交互模式運行,以及分配一個偽終端,并且進(jìn)入偽終端;

實例:

docker run -it --name mycentos03 67fa590cfc1c

注意:?

啟動普通容器的方式基本不用,沒有偽終端,沒有太大價值;啟動交互式容器的方式,容器一創(chuàng)建完畢,立即進(jìn)入偽終端

?

守護(hù)式方式創(chuàng)建并啟動容器

?docker run -di --name 別名 鏡像ID?

實例:

?docker run -di --name mycentos02 67fa590cfc1c

?執(zhí)行完命令后,終端依然再宿主機上;

?

啟動容器,并執(zhí)行/bin/bash命令;

?docker run -it --name 別名 鏡像ID? /bin/bash命令

端口映射;

docker run -it -p 8888:8080 tomcat

docker run -it -P tomcat

② Docker 列出容器

docker ps[OPTIONS]

OPTIONS說明:

-a :顯示所有的容器,包括未運行的。

-f :根據(jù)條件過濾顯示的內(nèi)容。

--format :指定返回值的模板文件。

-l :顯示最近創(chuàng)建的容器。

-n :列出最近創(chuàng)建的n個容器。

--no-trunc :不截斷輸出。

-q :靜默模式,只顯示容器編號。

-s :顯示總的文件大小。

docker ps 查看正在運行的容器

docker ps -a 查看所有容器

docker ps -n 2? 顯示最近創(chuàng)建的2個容器

docker ps -f status=exited 查看停止的容器

③ Docker 退出容器?

exit 容器停止退出

ctrl+P+Q 容器不停止退出

④ Docker 進(jìn)入容器

a、docker attach 容器ID or 容器名?

實例:

docker attach ce6343ee288f

不能進(jìn)入停止的狀態(tài)的容器

You cannot attach to a stopped container, start it first

b、Docker進(jìn)入容器執(zhí)行命令

docker exec -it 容器名稱 或者 容器ID 執(zhí)行命令

實例:

?docker exec -it tomcat02 ls -l /root/webapp02

直接操作容器,執(zhí)行完 回到 宿主主機終端;

?我們一般用于 啟動容器里的應(yīng)用 比如 tomcat nginx redis elasticsearch等等

⑤ Docker 啟動容器

docker start 容器ID or 容器名

實例:

?docker start mycentos00

?⑥ Docker 重啟容器

docker restart 容器ID or 容器名

實例:

?docker restart f9cadea1a5e7

⑦ Docker 停止容器?

docker stop 容器ID or 容器名

實例:

?docker stop 865b755cd0b2

暴力刪除,直接殺掉進(jìn)程 (不推薦)

docker kill 容器ID or 容器名

⑧ Docker 刪除容器

?docker rm 容器ID

如果刪除正在運行的容器,會報錯,我們假如需要刪除的話,需要強制刪除;

強制刪除docker rm -f 容器ID

刪除多個容器?

docker rm -f 容器ID1? 容器ID2 中間空格隔開

實例:

docker rm 865b755cd0b2 ce6343ee288f

刪除所有容器

docker rm -f $(docker ps -qa)

⑨ Docker 容器日志?

$ docker logs [OPTIONS] CONTAINER

? Options:

? ? ? ? --details? ? ? ? 顯示更多的信息

? ? -f, --follow? ? ? ? ?跟蹤實時日志

? ? ? ? --since string? ?顯示自某個timestamp之后的日志,或相對時間,如42m(即42分鐘)

? ? ? ? --tail string? ? 從日志末尾顯示多少行日志, 默認(rèn)是all

? ? -t, --timestamps? ? ?顯示時間戳

? ? ? ? --until string? ?顯示自某個timestamp之前的日志,或相對時間,如42m(即42分鐘)

(以上了解)

柚子快報激活碼778899分享:運維 Docker入門

http://yzkb.51969.com/

好文閱讀

評論可見,查看隱藏內(nèi)容

本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點和立場。

轉(zhuǎn)載請注明,如有侵權(quán),聯(lián)系刪除。

本文鏈接:http://gantiao.com.cn/post/19519508.html

發(fā)布評論

您暫未設(shè)置收款碼

請在主題配置——文章設(shè)置里上傳

掃描二維碼手機訪問

文章目錄