没有合适的资源?快使用搜索试试~ 我知道了~
Docker 及 Kubernetes 基础.pdf
0 下载量 65 浏览量
2024-07-03
09:14:38
上传
评论
收藏 926KB PDF 举报
温馨提示
k8s
资源推荐
资源详情
资源评论
第
2
章
Docker 及 Kubernetes 基础
上一章主要讲解了 Kubernetes 各种版本的安装方式,相信读者已经有了一套高可用 Kubernetes
集群了,并且也对 Kubernetes 的架构和各种组件有了一些认识。本章主要讲解 Docker 和 Kubernetes
的一些基本概念和简单操作,基于上一章搭建的集群来学习本章内容会让自己印象更加深刻。
2.1 Docker
基础
2.1.1 Docker 介绍
Docker 是一个开源的软件项目,在 Linux 操作系统上,Docker 提供了一个额外的软件抽象层
及操作系统层虚拟化的自动管理机制。Docker 运行名为“Container(容器)”的软件包,容器之
间彼此隔离,并 捆绑了自己的应用程序、工具、库和配置文件。所有容器都由单个操作系统内核运
行,因此比虚拟机更轻量级。
Docker 利用 Linux 资源分离机制,例如 cgroups 及 Linux Namespace 来创建相互独立的容器
(Container),可以在单个 Linux 实体下运行,避免了启动一个
虚拟机造成的额外负担。Linux 核
心对 Namespace(命名空间)的支持完全隔离了不同 Namespace 下的应用程序的“视野”(即作用
范围),包括进程树、网络、用户 ID 与挂载的文件系统等,而核心 cgroups 则提供了资源隔离,
包括 CPU、存储器、Block I/O 与网络。
2.1.2 Docker 基本命令
本节介绍 Docker 的一些常用命令,这些命令有助于读者排查和解决集群中的问题。
查看 Docker 版本。包括 Docker 版本号、API 版本号、Git Commit、Go 版本号等。
[root@K8S-master01 ~]# docker version
第 2 章 Docker 及 Kubernetes 基础
|
53
Client:
Version: 17.09.1-ce
API version: 1.32
Go version: go1.8.3
Git commit: 19e2cf6
Built: Thu Dec 7 22:23:40 2017
OS/Arch: linux/amd64
Server:
Version: 17.09.1-ce
API version: 1.32 (minimum version 1.12)
Go version: go1.8.3
Git commit: 19e2cf6
Built: Thu Dec 7 22:25:03 2017
OS/Arch: linux/amd64
Experimental: false
显示 Docker 信息:
Containers: 22
Running: 21
Paused: 0
Stopped: 1
Images: 18
Server Version: 17.09.1-ce
Storage Driver: overlay2
Backing Filesystem: xfs
Supports d_type: true
Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
Volume: local
Network: bridge host macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 06b9cb35161009dcb7123345749fef02f7cea8e0
runc version: 3f2f8b84a77f73d38244dd690525642a72156c64
init version: 949e6fa
Security Options:
seccomp
Profile: default
Kernel Version: 4.18.9-1.el7.elrepo.x86_64
Operating System: CentOS Linux 7 (Core)
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 3.848GiB
Name: K8S-master01
ID: HM66:LH4K:PNES:GFJX:TKNX:TLOH:WONE:KLHT:YRB3:3KAR:3WZJ:HYOX
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
54
|
再也不踩坑的 Kubernetes 实战指南
Debug Mode (server): false
Username: dotbalo
Registry: https://index.docker.io/v1/
Experimental: false
Insecure Registries:
127.0.0.0/8
Live Restore Enabled: false
查询镜像。OFFICIAL 为 OK 的是官方镜像,默认搜索的是 hub.docker.com。
[root@K8S-master01 ~]# docker search nginx
NAME DESCRIPTION
STARS OFFICIAL AUTOMATED
nginx Official build of Nginx.
10749 [OK]
jwilder/nginx-proxy Automated Nginx reverse
proxy for docker c... 1507 [OK]
richarvey/nginx-php-fpm Container running Nginx +
PHP-FPM capable ... 675 [OK]
jrcs/letsencrypt-nginx-proxy-companion LetsEncrypt container
to use with nginx as... 469 [OK]
webdevops/php-nginx Nginx with PHP-FPM
120 [OK]
kitematic/hello-world-nginx A light-weight nginx
container that demons... 119
zabbix/zabbix-web-nginx-mysql Zabbix frontend based on
Nginx web-server ... 86 [OK]
bitnami/nginx Bitnami nginx Docker Image
60 [OK]
linuxserver/nginx An Nginx container, brought
to you by Linu... 51
1and1internet/ubuntu-16-nginx-php-phpmyadmin-mysql-5
ubuntu-16-nginx-php-phpmyadmin-mysql-5 48
[OK]
tobi312/rpi-nginx NGINX on Raspberry Pi / armhf
23 [OK]
nginx/nginx-ingress NGINX Ingress Controller
for Kubernetes 15
blacklabelops/nginx Dockerized Nginx Reverse
Proxy Server. 12 [OK]
wodby/drupal-nginx Nginx for Drupal container
image 11 [OK]
centos/nginx-18-centos7 Platform for running nginx
1.8 or building... 10
nginxdemos/hello NGINX webserver that serves
a simple page ... 9 [OK]
webdevops/nginx Nginx container
8 [OK]
centos/nginx-112-centos7 Platform for running nginx
1.12 or buildin... 6
1science/nginx Nginx Docker images that
include Consul Te... 4 [OK]
travix/nginx NGinx reverse proxy
2 [OK]
mailu/nginx Mailu nginx frontend
第 2 章 Docker 及 Kubernetes 基础
|
55
2 [OK]
pebbletech/nginx-proxy nginx-proxy sets up a
container running ng... 2 [OK]
toccoag/openshift-nginx Nginx reverse proxy for
Nice running on sa... 1 [OK]
ansibleplaybookbundle/nginx-apb An APB to deploy NGINX
0 [OK]
wodby/nginx Generic nginx
拉取/下载镜像。默认是 hub.docker.com(docker.io)上面的镜像,如果拉取公司内部的镜像或
者其他仓库上的镜像,需要在镜像前面加上仓库的 URL,如:
docker pull harbor.xxx.net/frontend:v1
拉取公网上的 Nginx 镜像:
# 把公网上的镜像拉取到本地服务器,不指定版本号为 latest
[root@K8S-master01 ~]# docker pull nginx
Using default tag: latest
latest: Pulling from library/nginx
Digest:
sha256:b543f6d0983fbc25b9874e22f4fe257a567111da96fd1d8f1b44315f1236398c
Status: Image is up to date for nginx:latest
#拉取指定版本
[root@K8S-master01 ~]# docker pull nginx:1.15
1.15: Pulling from library/nginx
Digest:
sha256:b543f6d0983fbc25b9874e22f4fe257a567111da96fd1d8f1b44315f1236398c
Status: Downloaded newer image for nginx:1.15
推送镜像。把本地的镜像推送到公网仓库中,或者公司内部的仓库中。
默认登录和推送的是公网的镜像,如果需要推送到公司仓库或者其他仓库,只需要在镜像前
面使用 tag 并加上 URL 即可:
[root@K8S-master01 ~]# docker images | grep nginx-v2
nginx-v2 latest
3d9c6e44d3db 3 hours ago 109MB
[root@K8S-master01 ~]# docker tag nginx-v2 dotbalo/nginx-v2:test
[root@K8S-master01 ~]# docker images | grep nginx-v2
dotbalo/nginx-v2 test
3d9c6e44d3db 3 hours ago 109MB
nginx-v2 latest
3d9c6e44d3db 3 hours ago 109MB
[root@K8S-master01 ~]# docker login
Login with your Docker ID to push and pull images from Docker Hub. If you don't
have a Docker ID, head over to https://hub.docker.com to create one.
Username (dotbalo): dotbalo
Password:
Login Succeeded
[root@K8S-master01 ~]# docker push dotbalo/nginx-v2:test
The push refers to a repository [docker.io/dotbalo/nginx-v2]
2eaa7b5717a2: Mounted from dotbalo/nginx
a674e06ede38: Mounted from dotbalo/nginx
b7efe781401d: Mounted from dotbalo/nginx
56
|
再也不踩坑的 Kubernetes 实战指南
c9c2a3696080: Mounted from dotbalo/nginx
7b4e562e58dc: Mounted from dotbalo/nginx
test: digest:
sha256:5d749d2b10150426b510d2c3a05a99cf547c2ca1be382e1dbb2f90b68b6bea96 size:
1362
前台启动一个容器:
[root@DockerTestServer ~]# docker run -ti nginx bash
root@23bc7ccabb09:/#
后台启动:
[root@DockerTestServer ~]# docker run -tid nginx bash
1bcf5154d5c3a57d92a6796f526eac2cefd962aaca9cf4098689bfe830bb9e5e
端口映射。可以将本机的端口映射到容器的端口,比如将本机的 1111 端口映射到容器的 80
端口:
[root@DockerTestServer ~]# docker run -ti -p 1111:80 nginx bash
root@cd676d572188:/#
挂载卷。可以将本机的目录挂载到容器的指定目录,比如将 hosts 文件挂载到容器的 hosts:
[root@DockerTestServer ~]# docker run -ti -p 1111:80 -v /etc/hosts:/etc/hosts
nginx bash
root@cd676d572188:/#
查看当前正在运行的容器:
[root@K8S-master01 K8S-ha-install]# docker ps
CONTAINER ID IMAGE
COMMAND CREATED STATUS PORTS
NAMES
862e82066496 94ec7e53edfc
"nginx -g 'daemon ..." 21 hours ago Up 21 hours
K8S_nginx_nginx-deployment-57895845b8-vb7bs_default_d0d254f8-1fb3-11e9-a9f2-00
0c293ad492_1
10bf838e18d0
registry.cn-hangzhou.aliyuncs.com/google_containers/pause-amd64:3.1 "/pause"
21 hours ago Up 21 hours
K8S_POD_nginx-deployment-57895845b8-vb7bs_default_d0d254f8-1fb3-11e9-a9f2-000c
293ad492_1
查看所有容器,包括已经退出的:
[root@K8S-master01 K8S-ha-install]# docker ps -a
查看正在运行的容器(即显示出容器的 ID):
[root@K8S-master01 K8S-ha-install]# docker ps -q
……
0d1a98b3c402
c1fd8ff1f7f2
86b1c069024b
……
查看所有容器的 ID,包括已经退出的:
剩余88页未读,继续阅读
资源评论
colin工作室
- 粉丝: 1107
- 资源: 388
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- C++源码 运动控制源码 对话式示教编程 编程简单 控制卡 mfc 运动控制参考源码 运动流程可以在线编辑,支持输入输出,回原点,插补运动,等待 程序编辑区域,可以实现对各个命令的编辑,灵活配置
- 光伏储能并网发电模型,根据储能电池SOC的工作区间,光伏有MPPT、恒功率输出两种控制方式,在电池健康工况下光伏处于MPPT模式,在电池处于极限工况下,光伏处于恒功率模式,通过boost连接到公共点
- 基于labview开发的连续声音输入,有限声音输入,生成声音,读取声音文件至图形,同步声音输入输出,声音文件至声音输出,声音输入至文件,声音播放器,可以运行玩耍,结构清晰,动画仿真,适合学习参考
- 松下PLC编程 FP-XH 10轴定位 松下PLC项目实例,两台CPU间通过RS485通讯,10轴定位控制 轴控制程序采用FB,直观可靠,可以重复使用,使用时只需要对fb接口赋值即可,内部已经对系统
- ansys maxwell 开关磁阻电机参数化仿真 转子内外径、定转子极弧系数、气隙长度、绕组匝数等参数化扫描,灵敏度分析、效率优化
- 基于stm32的温湿度采集Proteus仿真(仿真+程序) 仿真图protues 8.9 程序编译器:keil 5 编程语言:C语言 功能描述: 通过STM32采集DHT11温度传感器的数据,将温湿度
- 基于51单片机数字电压表仿真设计-数码管(程序+仿真+原理图+pcb+报告) 原理图:Altium Designer 仿真图proteus 7.8 程序编译器:keil 4 keil 5 编程语言:C
- maxwell永磁同步电机2D到3D快速斜极脚本 支持连续、Z、V以及用户自定义角度分段
- 信捷PLC六轴标准程序,双头旋铆机 程序分层合理,有完整的注释,结构清晰明了 此程序已经实际设备上批量应用,程序成熟可靠 程序是分工位编辑,模块化编辑 对于做信捷PLC朋友有很好的借鉴意义 所
- 三菱Q系列PLC 大型项目程序案例,赵工PLC ABB机器人综合项目程序,有注释,配套触摸屏画面程序,三菱Q系列CPU,配置了DJ71DN91 三菱DeviceNet 智能模块、光纤伺服控制模块 Q
- 西门子200smart 自写PID功能块,西门子200smartPLC本身只支持8路PID而且不支持PID参数变量引接到触摸屏以及上位机,这给实际项目运用以及调试带来不少麻烦 功能块是自写的PID
- 三菱Q06UDV系列PLC,威纶通触摸屏,锂电池项目程序 全自动电芯组盘机 1.Q06UDV主CPU,搭载QJ61BT11N远程cclink模块数字输入输出IO控制,进行电磁阀,气缸感应器,真空发物流
- 最新版C#源码,非开源的 1,开发语言为c#, 非开源 2,以halcon17.12为底层,故运行有可能需要安装halcon17.12,halcon10也可以; 3、VS13以上均可运行;
- 驱动FOC 电机学习FOC控制 高频注入 推理过程和代码实现以及原理图 FOC矢量控制 FOC驱动无刷驱动foc无刷电机驱动方式学习 可用于驱动无刷电机,永磁同步电机 FOC框架、坐标变、SVPWM
- 光伏并网逆变器 包含原理图,pcb,源码以及元器件明细表 如下: 1) 功率接口板原理图和pcb,元器件明细表 2) 主控DSP板原理图(pdf)和PCB.元器件明细表以及代码 3)
- 基于A* Dijkstra Dstar算法的路径规划算法matlab代码,求解常见的路径规划问题 内含算法的注释,模块化编程,新手小白可快速入门 Astar算法,路径规划算法
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功