Skip to main content

common-dockerize

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

Datos de origen

Repositorio
bage2014/study
Última actividad en el origen
24 de junio de 2026 a las 23:18
Idioma detectado de SKILL.md
chino
Estrellas
646
Forks
113

Opciones de instalación

De forma predeterminada está seleccionado el prompt que primero revisa el origen. Puedes cambiar a un comando directo o descargar una copia local.

Revisa los archivos de origen

Lee SKILL.md y los archivos complementarios que muestra SkillsMP antes de decidir si quieres instalarlo.

Mostrando SKILL.md

SKILL.md
Instrucciones de origen · Vista previa de solo lectura
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: ``` ## 扩展指南 支持自定义镜像模板和编排配置。 ## 触发条件
Ver en GitHub