Home | 簡體中文 | 繁體中文 | 雜文 | 知乎專欄 | Github | OSChina 博客 | 雲社區 | 雲棲社區 | Facebook | Linkedin | 視頻教程 | 打賞(Donations) | About
知乎專欄多維度架構 微信號 netkiller-ebook | QQ群:128659835 請註明“讀者”

部分 XII. Virtualization

目錄

163. Docker
163.1. Installation
163.1.1. CentOS 8
163.1.1.1. docker-compose
163.1.2. CentOS 6
163.1.3. CentOS 7 docker-ce
163.1.4. Ubuntu
163.1.5. Ubuntu docker-ce
163.1.6. 測試 Docker
163.1.7. 重置 Docker
163.2. 配置 Docker
163.2.1. 開啟遠程訪問
163.2.2. 鏡像配置
163.2.2.1. 臨時選擇鏡像
163.2.2.2. 切換國內鏡像
163.2.3. ulimit 資源
163.3. 鏡像
163.3.1. 搜索鏡像
163.3.2. 獲取鏡像
163.3.3. 列出本地鏡像
163.3.4. tag
163.3.5. 保存和載入鏡像
163.3.6. 刪除本地鏡像
163.3.7. history 鏡像歷史紀錄
163.3.8. 基于 Dockerfile 創建鏡像
163.3.8.1. 創建 Dockerfile 檔案
163.3.8.2. 創建鏡像
163.3.8.3. 運行鏡像
163.3.8.4. 測試 Nginx
163.3.8.5. 提交鏡像
163.3.8.6. Dockerfile 語法
163.3.8.6.1. COPY
163.3.8.6.2. EXPOSE
163.4. 容器
163.4.1. 查看容器
163.4.2. 啟動與終止容器
163.4.3. 進入容器
163.4.4. 導出和導入容器
163.4.4.1. Ubuntu
163.4.4.2. Mac 導出與導入
163.4.5. 停止所有容器
163.4.6. 刪除容器
163.4.7. log-driver
163.4.8. 操作系統
163.4.8.1. 設置環境變數
163.4.8.2. /etc/hosts 配置
163.4.8.3. sysctl
163.4.8.4. ulimits
163.4.9. 查看容器內運行的進程
163.4.10. 更新容器資源配置
163.4.11. 查看容器的退出狀態
163.4.12. 暫停與恢復容器
163.4.13. 對比容器的變化
163.4.14. 查看容器狀態
163.5. 卷管理
163.5.1. 列出卷
163.5.2. 創建卷
163.5.3. 掛在鏡像
163.5.4. 檢查卷
163.5.5. 刪除卷
163.5.6. 銷毀所有未使用的卷
163.5.7. 在多個容器間共享卷
163.5.8. 容器綁定本地檔案系統
163.5.9. 只讀權限
163.6. 倉庫
163.6.1. Docker 官方倉庫
163.6.1.1. 登陸倉庫
163.6.1.2. 獲取鏡像
163.6.1.3. 上傳鏡像
163.6.2. 私有倉庫
163.6.2.1. 搭建私有倉庫
163.6.2.2. 推送鏡像到私有倉庫
163.6.2.3. 查詢鏡像
163.6.2.4. registry 鏡像高級配置
163.6.2.4.1. 私有倉庫認證
163.6.2.5. registry 介面
163.6.3. Harbor
163.7. Swarms
163.7.1. 管理 Swarms
163.7.1.1. 查看 Swarms 版本
163.7.1.2. 初始化 Swarms
163.7.1.3. 顯示 join-token
163.7.1.4. 創建虛擬機
163.7.1.5. 顯示虛擬機列表
163.7.1.6. 設置管理節點
163.7.1.7. 環境變數
163.7.1.8. 切換節點
163.7.1.9. 啟動/停止節點
163.7.1.10. 離線
163.7.2. Stack
163.7.3. 服務
163.7.3.1. 創建 Service
163.7.3.2. 刪除 Service
163.7.3.3. inspect
163.7.4. Docker 網絡
163.7.4.1. 創建 overlay 網絡
163.7.5. swarm 卷管理
163.7.5.1. Host Volumes
163.7.5.2. Named Volumes
163.7.5.3. 共享卷
163.8. docker 命令
163.8.1. docker - A self-sufficient runtime for containers
163.8.1.1. 查看 docker 信息
163.8.1.2. run
163.8.1.3. start / stop / restart
163.8.1.4. ps
163.8.1.5. top
163.8.1.6. inspect
163.8.1.6.1. 獲取容器名稱
163.8.1.6.2. 容器鏡像名稱
163.8.1.6.3. 獲取容器主機名 Hostname
163.8.1.6.4. 查詢 IP 地址
163.8.1.6.5. 容器日誌
163.8.1.6.6. 獲取 json 配置
163.8.1.6.7. 函數
163.8.1.6.8. 綜合查詢
163.8.1.7. images
163.8.1.7.1. Getting a new image
163.8.1.8. logs
163.8.1.9. 重置 Docker
163.8.1.10. 倉庫操作
163.8.1.10.1. 登陸
163.8.1.10.2. 註銷
163.8.1.11. build
163.8.1.12. 網絡管理
163.8.1.13. 事件信息
163.8.2. docker-compose - Define and run multi-container applications with Docker.
163.8.2.1. 安裝 docker-compose
163.8.2.1.1. 使用 pip 安裝
163.8.2.1.2. OSCM 安裝
163.8.2.2. 快速入門
163.8.2.3. 啟動/停止
163.8.2.3.1. 啟動
163.8.2.3.2. 停止
163.8.2.4. 查看進程
163.8.2.5. 查看日誌
163.8.2.6. 執行命令
163.8.2.7. docker-compose.yml
163.8.2.7.1. 版本號
163.8.2.7.2. 鏡像
163.8.2.7.3. 映射連接埠的標籤
163.8.2.7.4. 添加 hosts 檔案
163.8.2.7.5. 設置環境變數
163.8.2.7.6. 臨時檔案系統
163.8.2.7.7. 編譯 Dockerfile
163.8.2.7.8. resources 硬件資源分配
163.9. Docker Example
163.9.1. registry
163.9.1.1. Auth + SSL
163.9.2. Example Java - Spring boot with Docker
163.9.2.1. 獲取 CentOS 7 鏡像
163.9.2.2. 安裝 openjdk
163.9.2.3. Spring boot 包
163.9.2.4. 啟動 Spring boot 項目
163.9.2.5. 基于 CentOS 7 製作 spring 鏡像
163.9.3. Redis
163.9.3.1. Docker 命令
163.9.3.1.1. 獲取 Redis 鏡像
163.9.3.1.2. 啟動一個 Redis 實例
163.9.3.1.3. 進入 Redis
163.9.3.1.4. 啟動一個 Redis 實例並映射 6379 連接埠
163.9.3.1.5. 維護容器
163.9.3.2. Docker compose
163.9.3.3. Docker Stack
163.9.4. Nginx
163.9.4.1. nginx:latest
163.9.4.2. 安裝 Docker Nginx alpine
163.10. Docker FAQ
163.10.1. 檢查 Docker 是否可用
163.10.2. Bitnami
163.10.3. 刪除 <none> 鏡像
164. Kubernetes
164.1. Minikube
164.1.1. CentOS 8 安裝 minikube
164.1.1.1. CentOS
164.1.1.1.1. 無虛擬機
164.1.1.2. Mac OS
164.1.2. Quickstart
164.1.3. minikube 命令
164.1.3.1. 啟動 minikube
164.1.3.1.1. 虛擬機驅動
164.1.3.1.2. 開啟GPU
164.1.3.1.3. 日誌輸出級別
164.1.3.1.4. CPU 和 內存分配
164.1.3.1.5. 指定 kubernetes 版本
164.1.3.1.6. 配置啟動項
164.1.3.1.7. 指定 registry-mirror 鏡像
164.1.3.1.8. 指定下載鏡像
164.1.3.1.9. Enabling Unsafe Sysctls
164.1.3.2. 停止 minikube
164.1.3.3. Docker 環境變數
164.1.3.4. SSH
164.1.3.5. 緩存鏡像
164.1.3.6. 清理 minikube
164.1.3.7. Kubernetes 控製麵板
164.1.3.8. service
164.1.3.9. 查看日誌
164.1.3.10. 查看 Docker 環境變數
164.1.3.11. profile
164.1.3.12. addons
164.1.3.12.1. 啟用 addons
164.1.3.12.2. 查看 addons 列表
164.1.3.13. SSH
164.1.3.14. 查看IP地址
164.1.3.15. addons
164.1.3.15.1. 查看所有插件
164.1.3.15.2. 開啟 registry 私有庫
164.1.3.15.3. 啟用 ingress
164.1.4. FAQ
164.1.4.1. This computer doesn't have VT-X/AMD-v enabled. Enabling it in the BIOS is mandatory
164.1.4.2. ERROR FileContent--proc-sys-net-bridge-bridge-nf-call-iptables
164.1.4.3. ERROR ImagePull
164.1.4.4. 證書已存在錯誤
164.1.4.5. http: server gave HTTP response to HTTPS client
164.1.4.6. provided port is not in the valid range. The range of valid ports is 30000-32767
164.1.4.7. Exiting due to MK_ENABLE: run callbacks: running callbacks: [verifying registry addon pods : timed out waiting for the condition: timed out waiting for the condition]
164.2. microk8s
164.2.1. 安裝 microk8s
164.2.2. kubectl
164.2.3. Kubernetes Addons
164.2.3.1. dashboard
164.3. kubectl - controls the Kubernetes cluster manager.
164.3.1. 如何從 docker 過渡到 kubectl 命令
164.3.2. 查看信息
164.3.2.1. api-versions
164.3.2.2. 節點
164.3.2.2.1. nodes
164.3.2.3. 查詢集群狀態
164.3.2.4. config
164.3.2.4.1. use-context
164.3.2.5. cluster-info
164.3.3. namespace 命名空間
164.3.4. label 標籤
164.3.5. pods
164.3.5.1. 查看所有POD
164.3.5.2. 運行 POD
164.3.5.3. pod
164.3.5.4. 刪除 pod
164.3.5.5. 查看 Pod 的事件
164.3.5.6. Taint(污點)和 Toleration(容忍)
164.3.5.6.1. Taint(污點)設置
164.3.5.6.2. Toleration(容忍)調度
164.3.5.6.3. 使用場景
164.3.6. expose
164.3.7. 服務管理
164.3.7.1. 列出服務
164.3.7.2. 查看服務詳細信息
164.3.7.3. 更新服務
164.3.7.4. 刪除服務
164.3.7.5. clusterip
164.3.7.6. externalname
164.3.7.7. loadbalancer
164.3.7.8. nodeport
164.3.7.9. serviceaccount
164.3.8. 部署管理
164.3.8.1.
164.3.8.2. 刪除 deployment
164.3.9. 資源管理
164.3.10. 查看 pod 日誌
164.3.11. 執行 Shell
164.3.12. edit
164.3.13. rollout
164.3.14. port-forward 連接埠映射
164.3.15. secret 密鑰管理
164.3.15.1.
164.3.15.2. Private Registry 用戶認證
164.3.15.3. 配置TLS SSL
164.3.16. ConfigMap
164.3.16.1. 創建 Key-Value 配置項
164.3.16.2. 從檔案創建 ConfigMap
164.3.16.3.
164.3.16.4. 查看 ConfigMap
164.3.16.5. 刪除 ConfigMap
164.3.17. Job/CronJob
164.3.17.1. CronJob
164.3.18. explain
164.3.18.1. ingress
164.3.19. 操作系統
164.3.19.1. sysctls
164.4. Rancher - Multi-Cluster Kubernetes Management
164.4.1. 安裝
164.4.1.1. Ubuntu
164.4.1.2. SSL 證書
164.4.1.3. 進入容器
164.4.1.4. Rancher CLI
164.4.1.5. rancher-compose
164.4.2. 快速入門
164.4.2.1. API
164.4.3. Rancher CLI
164.4.3.1. 登陸 Rancher
164.4.3.2. 查看集群
164.4.3.3. 查看節點
164.4.3.4. catalog
164.4.3.5. 查看設置
164.4.4. Rancher Compose
164.4.4.1. Rancher Compose 命令
164.4.4.2. 操作演示
164.4.5. Rancher Kubernetes Engine (RKE)
164.4.6. Rancher CLI
164.4.7. 調試
164.4.8. FAQ
164.4.8.1. [network] Host [rancher.netkiller.cn] is not able to connect to the following ports: [rancher.netkiller.cn:2379]. Please check network policies and firewall rules
164.5. Helm - The package manager for Kubernetes
164.5.1. 安裝 Helm
164.5.1.1. Ubuntu
164.5.1.2. Mac
164.5.2. 快速開始
164.5.3. Helm 命令
164.5.3.1. 初始化 Helm
164.5.3.2. 查看倉庫列表
164.5.3.3. 搜索
164.5.3.4. 查看包信息
164.5.3.5. 安裝
164.5.3.6. 列表
164.5.3.7. 刪除
164.5.3.8. 升級
164.5.3.9. 回滾
164.5.3.10. 查看狀態
164.5.4. elastic
164.5.5. Helm Faq
164.6. kubectl example
164.6.1. 私有 registry
164.6.2. mongodb
164.6.3. tomcat
164.7. Kubectl YAML
164.7.1. ServiceAccount
164.7.1.1.
164.7.2. 創建命名空間
164.7.3. Pod
164.7.3.1. 指定主機名
164.7.3.2.
164.7.3.3. 健康狀態檢查
164.7.3.4. securityContext
164.7.3.4.1. sysctls
164.7.3.4.2. runAsUser
164.7.3.4.3. security.alpha.kubernetes.io/sysctls
164.7.3.5. Taint(污點)和 Toleration(容忍)
164.7.4. Service
164.7.4.1. 創建服務
164.7.4.2. 查看服務
164.7.4.3. 設置外部IP
164.7.4.4. 綁定外部域名
164.7.4.5.
164.7.4.6. nodePort
164.7.4.7. LoadBalancer
164.7.4.8. Example
164.7.5. ConfigMap
164.7.5.1. Key-Value 配置
164.7.5.2. 環境變數
164.7.5.3. 配置檔案
164.7.6. Volume
164.7.6.1. local
164.7.6.1.1. 案例
164.7.7. Job
164.7.7.1. 執行單詞任務
164.7.7.2. 計劃任務
164.7.8. Ingress
164.7.8.1. 連接埠
164.7.8.2. URI 規則
164.7.8.3. vhost 虛擬主機
164.7.8.4. rewrite
164.7.8.5. annotations 配置
164.7.8.5.1. HTTP 跳轉到 HTTPS
164.7.8.5.2. server-snippet
164.7.8.6. 金絲雀發佈(灰度發佈)
164.7.8.6.1. 準備服務
164.7.8.6.2. 方案一,權重分配
164.7.8.6.3. 通過HTTP頭開啟灰度發佈
164.7.8.6.4. 通過 Cookie 開啟
164.7.8.7. 管理 Ingress
164.8. istio
164.8.1. 啟動 istio
164.8.2. 禁用 istio
164.9. Kubeapps
165. Virtual Machine(虛擬機)
165.1. Kernel-based Virtual Machine(KVM)
165.1.1. kvm install usage yum
165.1.1.1. brctl / tunctl
165.1.1.2. virt-install
165.1.2. Ubuntu
165.1.3. CentOS 6.2
165.1.4. Scientific Linux Virtualization
165.1.5. libvirt
165.1.5.1. virsh
165.1.5.1.1. console
165.1.5.1.2. dumpxml
165.1.5.2. Virtual Machine Manager
165.1.6. FAQ
165.1.6.1. No hypervisor options were found for this connection
165.1.6.2. 如何判斷當前伺服器是實體機還是虛擬機
165.2. Xen
165.2.1. install
165.2.2. Manager
165.3. OpenVZ
165.3.1. 安裝OpenVZ
165.3.2. 使用OpenVZ & 建立VPS
165.3.2.1. 安裝操作系統模板
165.3.2.2. 創建OpenVZ操作系統節點(VPS)
165.3.3. 設置VPS參數
165.4. vagrant - Tool for building and distributing virtualized development environments
165.4.1. vagrant for windows
165.5. 虛擬機管理
165.5.1. Proxmox - Open-source virtualization management platform Proxmox VE
165.5.2. OpenStack
165.5.3. CloudStack
165.5.4. OpenNode
165.5.5. OpenNEbula