2024年8月2日工作任务安排
1. 学习 Docker 的基本概念和使用方法
任务内容:
- 了解 Docker 的核心概念,如镜像(Image)、容器(Container)、仓库(Registry)等。
- 学习 Docker 的基本命令,如
docker build
、docker run
、docker ps
、docker stop
等。 - 熟悉 Docker 的常用操作,例如创建和管理容器、持久化数据、网络配置等。
学习资源:
示例代码:
bash# 构建镜像 docker build -t my-spring-boot-app . # 运行容器 docker run -d -p 8080:8080 --name my-running-app my-spring-boot-app # 列出正在运行的容器 docker ps # 停止容器 docker stop my-running-app
2. 将 Spring Boot 应用容器化
任务内容:
- 编写 Dockerfile 文件,为 Spring Boot 应用创建 Docker 镜像。
- 使用 Docker 构建镜像,并运行 Spring Boot 容器。
- 验证容器化后的 Spring Boot 应用是否正常运行。
参考资料:
示例代码:
Dockerfile:
Dockerfile# 基础镜像 FROM openjdk:11-jre-slim # 添加 jar 文件到容器中 COPY target/my-spring-boot-app.jar /app.jar # 运行 jar 文件 ENTRYPOINT ["java", "-jar", "/app.jar"]
构建和运行镜像:
bash# 在项目根目录下运行以下命令 # 构建 Docker 镜像 docker build -t my-spring-boot-app . # 运行容器 docker run -d -p 8080:8080 --name my-running-app my-spring-boot-app
3. 学习 Kubernetes 的基本概念和使用方法
任务内容:
- 了解 Kubernetes 的核心概念,如 Pod、Service、Deployment、Namespace 等。
- 学习 Kubernetes 的基本命令,如
kubectl apply
、kubectl get
、kubectl describe
、kubectl delete
等。 - 熟悉 Kubernetes 的常用操作,例如创建和管理 Pod、Service、Deployment、进行滚动更新等。
学习资源:
示例代码:
bash# 创建一个 Pod kubectl run my-pod --image=my-spring-boot-app --port=8080 # 获取所有 Pod kubectl get pods # 获取 Pod 的详细信息 kubectl describe pod my-pod # 删除 Pod kubectl delete pod my-pod
4. 在 Kubernetes 集群中部署容器化应用
任务内容:
- 编写 Kubernetes 配置文件(YAML 文件),定义 Pod、Service、Deployment 等资源。
- 使用
kubectl
命令将容器化的 Spring Boot 应用部署到 Kubernetes 集群中。 - 验证应用在 Kubernetes 集群中的运行状态,并进行必要的调试和优化。
参考资料:
示例代码:
deployment.yaml:
yamlapiVersion: apps/v1 kind: Deployment metadata: name: my-spring-boot-app spec: replicas: 2 selector: matchLabels: app: my-spring-boot-app template: metadata: labels: app: my-spring-boot-app spec: containers: - name: my-spring-boot-app image: my-spring-boot-app:latest ports: - containerPort: 8080
service.yaml:
yamlapiVersion: v1 kind: Service metadata: name: my-spring-boot-app-service spec: selector: app: my-spring-boot-app ports: - protocol: TCP port: 80 targetPort: 8080 type: LoadBalancer
应用配置文件并部署:
bash# 创建 Deployment kubectl apply -f deployment.yaml # 创建 Service kubectl apply -f service.yaml # 查看 Deployment 和 Service kubectl get deployments kubectl get services