Docker安裝與管理 czt

2022-09-22 23:42:18 字數 4015 閱讀 8798

docker概述

docker是什麼?

是一種輕量級的「虛擬機器"

在linux容器裡執行應用的開源工具

docker的使用場景打包應用程式簡化部署

可脫離底層硬體任意遷移

docker核心概念映象

容器倉庫

公有倉庫:官方提供

私有倉庫:私人搭建

注:進項和容器可以相互轉換!

centos安裝docker的兩種方式使用curl獲得docker的安裝指令碼進行安裝

使用yum倉庫來安裝docker

注:建議使用yum安裝!

docker安裝

主機作業系統

ip位址

主要軟體

伺服器centos7

192.168.142.130

docker-19.003.0-ce

#安裝依賴包

yum install -y yum-utils device-mapper-persistent-data lvm 2

#設定阿里雲映象源

yum-config-manager --add-repo

#安裝docker-ce

yum install docker-ce -y

#關閉防火牆和安全功能

systemctl stop firewalld.service

setenforce 0

#開啟docker

systemctl start docker.service

#開機自啟動docker

systemctl enable docker.service

#檢視服務程序狀態

ps aux | grep docker

docker基礎操作

#檢視docker本號

docker version

#公有倉庫搜尋映象

docker search nginx

#**映象(忒慢!)

docker pull 倉庫名稱【:標籤】

例項:docker pull nginx#映象加速

cd /etc/docker/

tee /etc/docker/daemon.json <

docker容器操作

#建立容器

docker create [選項]映象執行的程式

#選項-i讓容器的標準輸入保持開啟

-t讓docker分配乙個偽終端

**例項:**

```bash

docker create -it nginx:latest /bin/bash

#檢視容器

docker ps [選項]

#選項-a:列出最近一次啟動的容器

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

例項:docker ps -a#啟動容器

docker start 容器id

#建立容器並執行shell命令

docker run [選項]映象執行的程式,執行的命令

#選項-p:可以指定對映埠;

-p:將容器開放的網路埠(預設是80埠)對映到主機隨機的乙個埠;

-d:在後台進行執行

#持續在後台執行

docker run -d 容器名稱 /bin/bash -c "while true;do echo hello;done"

#終止容器

docker stop 容器的id/名稱

#進入容器,容器一定要處於up狀態

docker exec p[選項]容器的id/名稱 /bin/bash

docker exec -it 容器id /bin/bash

#選項-i : 即使沒有連線,也保持stdin 開啟;

-t : 分配乙個偽終端,這樣就可以看到 linux 命令提示符了;

#退出容器

exit

#匯出容器

docker export 容器的id/名稱id > 檔名

#匯入容器(會生成映象,而不會建立容器)

cat 檔名 | docker import -生成的映象名稱:標籤

#刪除容器

docker rm [選項]容器的id/名稱

#批量刪除

docker ps -a | awk '' | bash

docker資源控制

1.限制cpu使用速率

●通過--cpu-quota選項來限制cpu的使用率

●通過修改配置檔案cpu.cfs_quota_us實現

例項:docker run --cpu-quota 20000 centos

2.多工按比例分享cpu

docker run --cpu-shares 1024容器a

docker run --cpu-shares 1024容器b

docker run --cpu-shares 2048容器c

例項:#按比例分配

#建立兩個容器為c1和c2, 若只有這兩個容器,設定容器的權重,使得c1和c2的cpu資源佔比為33.3%和166.7%。

locker run -itd --name c1 --cpu-shares 512 paigeeworld/centos7

locker run -itd --name c2 --cpu-shares 1024 paigeewor1d/centos7

3.使用--cpuset-cpus選項限制cpu核心使用權

docker run- -m 512m paigeeworld/ centos7

4.對blkio的限制

--device-read-bps: 限制讀某個裝置的bps (資料量)例項:

docker run -d --device-read-bps /dev/sda: 30m paigeeworld/centos7--device-write-bps :限制寫入某個裝置的bps (資料量)例項:

docker run -d --device-write-bps dev/sda: 30m pai geewor ld/ centos7--device-read-iops :限制讀某個裝置的iops (次數)--device-write-iops :限制寫入某個裝置的iops (次數)

docker的資料管理

資料管理操作

方便檢視容器內產生的資料

多容器間實現資料共享

兩種管理方式

資料卷(容器和宿主間的共享)

資料卷容器(實現容器之間的共享)

docker資料卷

資料卷是乙個提供容器使用的特殊目錄#建立資料卷

#掛載主機目錄作為資料卷

#掛載web容器中的資料捲到新的容器

例項:#**映象

docker pull centos

#宿主機目錄/var/www掛載容器中的/data1

docker run -v /var/www:/data1 --name web1 -it centos /bin/bash

#建立測試

cd /data1/

touch test

#退出容器

exit

#返回宿主機進行檢視

ls /var/www

[root@localhost ~]# ls /var/www

test

docker資料卷容器

#資料卷容器

docker run --name web100 -v /data1 -v /data2 -it centos /bin/bash

#新容器掛載資料卷容器web100

docker run -it --volumes-from web100 --name db1 centos /bin/bash

謝謝閱讀!!!

docker安裝與docker安裝nginx

主要是部署速度的不同,dockers較快,是秒級,而虛擬機器很慢,至少10s以上 docker部署專案將會更快更好 step 1 安裝必要的一些系統工具 step 2 新增軟體源資訊 sudo yum config manager add repo step 3 更新並安裝 docker ce su...

管理Docker工具Rancher安裝

文件 1 安裝docker 2 重新安裝mysql5.7版本以上mysql5.7.24 3 更改配置檔案my.cnf 增加下列幾行,如果有就修改,沒有就新增到末尾 max packet size 32m innodb file per table 1 innodb log file size 256...

docker 安裝 和 portainer管理平台

docker 安裝 這個是官方的安裝 首先解除安裝docker安裝 yum remove docker docker client docker client latest docker common docker latest docker latest logrotate docker logr...