Skip to main content

common-dockerize

Docker容器化技能,生成Docker配置文件

Quellinformationen

Repository
bage2014/study
Letzte Quellaktivität
24. Juni 2026 um 23:18
Erkannte Sprache von SKILL.md
Chinesisch
Sterne
646
Forks
113

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
name
common-dockerize
description
Docker容器化技能,生成Docker配置文件
trigger
需要将项目容器化部署时
disable-when
项目已容器化或使用其他部署方式
category
devops
tags
["docker","container","devops","deployment"]
# Docker容器化技能 ## 功能描述 为项目生成 Docker 配置文件,支持 Spring Boot 和 Vue 项目的容器化部署。 ## 何时使用 - 项目需要容器化部署时 - 创建开发/测试/生产环境的 Docker 镜像 - 配置多容器编排 ## 核心功能 - 生成 Dockerfile - 生成 docker-compose.yml - 配置多环境 Docker 镜像 - 优化镜像大小 - 支持 Spring Boot 和 Vue 项目 ## 输入参数 | 参数 | 类型 | 必填 | 说明 | |------|------|------|------| | projectType | String | 是 | 项目类型(spring-boot/vue) | | appName | String | 是 | 应用名称 | | appPort | String | 否 | 应用端口(默认 8080) | | withCompose | Boolean | 否 | 是否生成 docker-compose(默认 true) | | withDatabase | Boolean | 否 | 是否包含数据库服务(默认 false) | | databaseType | String | 否 | 数据库类型(mysql/postgresql,默认 mysql) | ## 输出格式 ```json { "status": "SUCCESS", "projectType": "spring-boot", "filesCreated": [ "Dockerfile", "docker-compose.yml", ".dockerignore" ], "imageName": "my-spring-app:latest", "commands": [ "docker build -t my-spring-app .", "docker-compose up -d" ] } ``` ## 使用流程 1. 指定项目类型 2. 提供应用信息 3. 选择是否需要数据库 4. 生成 Docker 配置文件 ## 最佳实践 - 使用多阶段构建减小镜像大小 - 开发环境使用 docker-compose 编排 - 生产环境使用 Kubernetes 或 Swarm ## 配置要求 ### Dockerfile 示例(Spring Boot) ```dockerfile FROM eclipse-temurin:21-jdk-alpine AS builder WORKDIR /app COPY . . RUN ./mvnw clean package -DskipTests FROM eclipse-temurin:21-jre-alpine WORKDIR /app COPY --from=builder /app/target/*.jar app.jar EXPOSE 8080 ENTRYPOINT ["java", "-jar", "app.jar"] ``` ### docker-compose.yml 示例 ```yaml version: '3.8' services: app: build: . ports: - "8080:8080" environment: - SPRING_PROFILES_ACTIVE=docker depends_on: - db db: image: mysql:8.0 environment: - MYSQL_ROOT_PASSWORD=password - MYSQL_DATABASE=example_db volumes: - mysql_data:/var/lib/mysql volumes: mysql_data: ``` ## 扩展指南 支持自定义镜像模板和编排配置。 ## 触发条件
Auf GitHub ansehen