Docker和Kubernetes技术

Docker

核心组件

  • Docker守护进程(Daemon)
  • Docker镜像(Image)
  • Docker容器(Container)
  • Docker仓库(Repository)

基本操作

  • 拉取镜像docker pull <image_name>,例如:docker pull nginx
  • 运行容器docker run <image_name>,例如:docker run nginx
  • 查看容器docker ps
  • 停止容器docker stop <container_id>
  • 删除容器docker rm <container_id>

业务场景

  1. 构建镜像docker build -t mywebapp .,假设当前目录下有Dockerfile
  2. 运行容器docker run -d -p 80:80 mywebapp,将容器的80端口映射到主机的80端口
  3. 查看日志docker logs <container_id>,查看容器运行日志

Kubernetes

核心组件

  • Pod:最小部署单元,包含一个或多个容器
  • Service:定义一组Pod的访问方式
  • Volume:存储卷,用于Pod中的容器共享数据
  • Namespace:命名空间,用于隔离资源

基本操作

  • 安装Kubernetes:可以使用Minikube在本地安装Kubernetes
  • 部署应用 :使用YAML文件定义Pod、Service等资源,然后使用kubectl apply -f <file_name>.yaml部署
  • 查看Podkubectl get pods
  • 查看Servicekubectl get services
  • 扩容Podkubectl scale deployment/<deployment_name> --replicas=<number>

业务场景

  1. 定义Pod :创建一个YAML文件,定义Pod的配置,例如:myapp-pod.yaml
  2. 部署Podkubectl apply -f myapp-pod.yaml
  3. 定义Service :创建一个YAML文件,定义Service的配置,例如:myapp-service.yaml
  4. 部署Servicekubectl apply -f myapp-service.yaml
  5. 查看部署状态kubectl get podskubectl get services

Devops 思想

相关推荐
唯情于酒3 小时前
Docker学习
学习·docker·容器
喵叔哟3 小时前
20.部署与运维
运维·docker·容器·.net
德育处主任7 小时前
『NAS』在群晖部署一个文件加密工具-hat.sh
前端·算法·docker
运维栈记8 小时前
虚拟化网络的根基-网络命名空间
网络·docker·容器
Joren的学习记录10 小时前
【Linux运维大神系列】Kubernetes详解3(kubeadm部署k8s1.23高可用集群)
linux·运维·kubernetes
Hellc00710 小时前
Docker网络冲突排查与解决方案:完整指南
网络·docker·容器
hanyi_qwe10 小时前
发布策略 【K8S (三)】
docker·容器·kubernetes
眠りたいです10 小时前
Docker核心技术和实现原理第二部分:docker镜像与网络原理
运维·网络·docker·容器
德育处主任11 小时前
『NAS』在群晖部署图片压缩工具-Squoosh
前端·javascript·docker