springcommunity/spring-petclinic-restSpring Petclinic REST镜像是经典Spring Petclinic示例应用的RESTful API版本,专为演示Spring框架的RESTful服务开发而设计。该镜像封装了完整的RESTful接口实现,可直接部署运行,用于展示Spring Boot、Spring Data JPA、Spring MVC等技术在RESTful API开发中的实践。
通过Docker命令快速启动容器:
bashdocker run -d -p 8080:8080 --name petclinic-rest springcommunity/spring-petclinic-rest
-p 8080:8080:将容器的8080端口映射到主机的8080端口--name petclinic-rest:指定容器名称为petclinic-rest支持通过环境变量调整应用配置(完整配置参见官方文档):
| 环境变量 | 描述 | 默认值 |
|---|---|---|
SERVER_PORT | 应用服务端口 | 8080 |
SPRING_DATASOURCE_URL | 数据库连接URL | jdbc:h2:mem:petclinic |
SPRING_DATASOURCE_USERNAME | 数据库用户名 | sa |
SPRING_DATASOURCE_PASSWORD | 数据库密码 | 空 |
SPRING_H2_CONSOLE_ENABLED | 是否启用H2控制台 | true |
示例(使用外部MySQL数据库):
bashdocker run -d -p 8080:8080 \ -e SPRING_DATASOURCE_URL=jdbc:mysql://mysql-host:3306/petclinic \ -e SPRING_DATASOURCE_USERNAME=dbuser \ -e SPRING_DATASOURCE_PASSWORD=dbpass \ --name petclinic-rest springcommunity/spring-petclinic-rest
服务启动后,通过以下方式访问REST API:
http://<主机IP>:8080/apihttp://<主机IP>:8080/swagger-ui.html查看API文档(如已集成Swagger)GET /api/petsGET /api/pets/{id}POST /api/pets(请求体为JSON格式的宠物信息)PUT /api/pets/{id}DELETE /api/pets/{id}默认使用H2内存数据库,数据在容器重启后丢失。如需持久化数据,可:
bashdocker run -d -p 8080:8080 \ -v /host/path/to/h2-data:/app/h2-data \ -e SPRING_DATASOURCE_URL=jdbc:h2:file:/app/h2-data/petclinic \ --name petclinic-rest springcommunity/spring-petclinic-rest
SPRING_DATASOURCE_*环境变量指定连接信息manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务