docker简介与搭建
1 . 對docker的理解:
Docker 是一個開源的應(yīng)用容器引擎,讓開發(fā)者可以打包他們的應(yīng)用以及依賴包到一個可移植的鏡像中,然后發(fā)布到任何流行的 Linux或Windows 機(jī)器上,也可以實(shí)現(xiàn)虛擬化。容器是完全使用沙箱機(jī)制,相互之間不會有任何接口。
一個完整的Docker有以下幾個部分組成:
- DockerClient客戶端
- DockerClient客戶端
- Docker Image鏡像
- DockerContainer容器
Docker 使用客戶端-服務(wù)器 (C/S) 架構(gòu)模式,使用遠(yuǎn)程API來管理和創(chuàng)建Docker容器。Docker 容器通過 Docker 鏡像來創(chuàng)建。容器與鏡像的關(guān)系類似于面向?qū)ο缶幊讨械膶ο笈c類。
| 容器 | 對象 |
| 鏡像 | 類 |
Docker采用 C/S架構(gòu) Docker daemon 作為服務(wù)端接受來自客戶的請求,并處理這些請求(創(chuàng)建、運(yùn)行、分發(fā)容器)。 客戶端和服務(wù)端既可以運(yùn)行在一個機(jī)器上,也可通過 socket 或者RESTful API 來進(jìn)行通信。
docker的優(yōu)點(diǎn):
- 輕量級:所有容器在一臺機(jī)器上共享同一個操作系統(tǒng)內(nèi)核,這樣他們立即開始,并更有效地利用內(nèi)存。Image 是從分層文件系統(tǒng)的構(gòu)建,這樣他們能夠共享公共文件,使得磁盤使用率和 Image 的下載更加高效。
- 開放:Docker 容器是基于開發(fā)的標(biāo)準(zhǔn),允許容器運(yùn)行在主流的 Linux 發(fā)布版和 Microsoft 操作系統(tǒng)作為所有的基礎(chǔ)設(shè)施。
- 安全:容器使得應(yīng)用程序彼此隔離,而基礎(chǔ)架構(gòu)同時為應(yīng)用程序提供了額外的保護(hù)層。
Docker 與 虛擬機(jī)的區(qū)別
- 每個虛擬機(jī)都包括應(yīng)用程序、必要的二進(jìn)制文件和庫以及一個完整的客戶操作系統(tǒng)(Guest OS),盡管它們被分離,它們共享并利用主機(jī)的硬件資源,將近需要十幾個 GB 的大小。
- 容器包括應(yīng)用程序及其所有的依賴,但與其他容器共享內(nèi)核。它們以獨(dú)立的用戶空間進(jìn)程形式運(yùn)行在主機(jī)操作系統(tǒng)上。他們也不依賴于任何特定的基礎(chǔ)設(shè)施,Docker 容器可以運(yùn)行在任何計算機(jī)上,任何基礎(chǔ)設(shè)施和任何云上。
2 . docker部署
1 . 安裝docker和相關(guān)依賴性
在官網(wǎng)進(jìn)行下載:https://docs.docker.com/
安裝docker,同時還會自動安裝其他依賴軟件,需要提前設(shè)置好系統(tǒng)yum源,可以使用7.3或者7.5的鏡像源
yum install docker-ce.x86_64 docker-ce-cli.x86_64 containerd.io.x86_64 container-selinux.noarch -y2.打開docker服務(wù)
systemctl start docker3 . 安裝bash等相關(guān)安裝包,當(dāng)使用docker的時候,發(fā)現(xiàn)可以成功補(bǔ)齊。
yum install -y bash-*4 . 安裝成功之后查看docker信息
系認(rèn)會自動產(chǎn)生一個docker網(wǎng)絡(luò)接口
3 . docker簡單的用法
1 . docker的一些常用命令:(以ubuntu鏡像為模板)
| docker run -it --name vm1 ubuntu | 創(chuàng)建容器 |
| docker ps | 查看容器狀態(tài) |
| docker ps -a | 查看容器狀態(tài)(包括不活躍的容器) |
| docker images | 查看已導(dǎo)入的所有鏡像 |
| docker attach vm1 | 連接容器 |
| docker top vm1 | 查看容器進(jìn)程 |
| docker logs vm1 | 查看容器指令輸出 -f 參數(shù)可以實(shí)時查看 |
| docker inspect vm1 | 查看容器詳情 |
| docker stats vm1 | 查看容器資源使用率 |
| docker diff vm1 | 查看容器修改 |
| docker start/stop vm1 | 開啟/停止 容器 |
| docker kill vm1 | 強(qiáng)制關(guān)閉容器 |
| docker restart vm1 | 重啟容器 |
| docker pause/unpause vm1 | 暫停/恢復(fù)容器 |
| docker rm vm1 | 刪除容器 |
| docker rmi ubuntu | 刪除鏡像 |
| docker version | 查看docker安裝版本信息 |
| docker info | 顯示 Docker 系統(tǒng)信息,包括鏡像和容器數(shù) |
2 . docker 對鏡像的所有操作命令
[root@docker ~]# docker image build import load prune push save history inspect ls pull rm tag3 . docker 對容器的所有操作命令
[root@docker ~]# docker container attach diff kill port rm stop wait commit exec logs prune run top cp export ls rename start unpause create inspect pause restart stats update4 . 運(yùn)行一個簡單的容器
docker load -i game2048.tar # 導(dǎo)入鏡像 docker run -d --name vm1 -p 80:80 game2048 # 運(yùn)行容器 -d 是打入后臺 --name 是給容器的命名 -p作端口預(yù)設(shè) 物理機(jī)端口:docker 端口 docker ps # 查看運(yùn)行的容器
瀏覽器訪問查看運(yùn)行結(jié)果:
總結(jié)
以上是生活随笔為你收集整理的docker简介与搭建的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 机器人总动员拟人后_WALL·E 机器人
- 下一篇: linux虚拟机怎么看var文件,一种获