2月1日java假期学习读书笔记
一、学习目标
了解Docker Compose的基本概念和优势。
掌握如何使用Docker Compose管理多个容器。
学习如何通过Docker Compose部署多容器应用。
通过实际练习,构建一个包含多个服务的微服务架构。
理解Docker Compose在微服务开发中的应用场景。
二、学习内容
(一)Docker Compose基础
- Docker Compose简介
Docker Compose是一个工具,用于定义和运行多个容器的Docker应用。
它通过一个docker-compose.yml文件定义服务、网络和卷,简化了多容器应用的管理。 - 安装Docker Compose
Windows/Mac:Docker Desktop自带Docker Compose。
Linux:通过脚本安装:
bash
sudo curl -L "https://github.com/docker/compose/releases/download/$(curl -s https://api.github.com/repos/docker/compose/releases/latest | grep -Po '"tag_name": "\K.*\d')" /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose - Docker Compose的基本命令
启动服务:
bash
docker-compose up
后台启动服务:
bash
docker-compose up -d
停止服务:
bash
docker-compose down
查看服务状态:
bash
docker-compose ps
查看日志:
bash
docker-compose logs
(二)使用Docker Compose部署多容器应用 - 定义docker-compose.yml文件
示例:一个包含Spring Boot应用和MySQL数据库的微服务架构。
yaml
version: '3.8'
services:
db:
image: mysql:8.0
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: mydatabase
ports:
- "3306:3306"
volumes:
- db_data:/var/lib/mysql
app:
build: .
depends_on:
- db
ports:
- "8080:8080"
environment:
SPRING_DATASOURCE_URL: jdbc:mysql://db:3306/mydatabase
SPRING_DATASOURCE_USERNAME: root
SPRING_DATASOURCE_PASSWORD: root
volumes:
db_data:
2. 构建和启动服务
在项目根目录下运行以下命令:
bash
docker-compose up --build
如果需要后台运行:
bash
docker-compose up --build -d
3. 验证服务
访问http://localhost:8080,确认Spring Boot应用正常运行。
使用MySQL客户端连接到localhost:3306,验证数据库服务是否正常。
(三)实际练习:构建一个包含多个服务的微服务架构
- 创建Spring Boot项目
使用Spring Initializr生成一个包含JPA和MySQL依赖的Spring Boot项目。 - 创建docker-compose.yml文件
定义MySQL服务和Spring Boot应用服务,配置好环境变量和依赖关系。 - 运行和测试
使用Docker Compose启动服务,验证应用是否可以正常连接到数据库。
模拟微服务之间的调用,验证多容器架构的运行情况。
三、学习心得
Docker Compose的优势
Docker Compose通过docker-compose.yml文件简化了多容器应用的管理。
它支持服务的依赖关系、网络配置和数据卷管理,非常适合微服务架构。
多容器架构的管理
使用Docker Compose可以轻松定义和管理多个服务之间的关系。
通过配置文件,可以快速启动、停止和重建服务,提高开发效率。
实践的重要性
通过实际构建和运行多容器应用,我更好地理解了Docker Compose的使用方法。
实践可以帮助快速发现和解决问题,加深对知识点的理解。
浙公网安备 33010602011771号