Dockerfile 生成器
免费在线使用 Dockerfile 生成器 无需安装即可使用工具
关于 Dockerfile Generator
为六个目标生成框架感知的 Dockerfile:Node.js、Python、Go、Java、Rust 和 Nginx 静态托管。每个模板都了解该框架的基础镜像、端口、构建命令和启动命令,并支持单阶段或多阶段构建。启用该选项时会附加匹配的 .dockerignore 部分。
使用方法
1. 从下拉菜单中选择框架(Node.js、Python、Go、Java、Rust 或 Nginx Static)。2. 如果默认值不合适,调整基础镜像和端口。3. 编辑构建命令和启动命令(Python 的 pip install 命令、Java 的 Maven/Gradle 构建工具,以及 Nginx 的构建输出目录会按需出现)。4. 切换多阶段构建和包含 .dockerignore。5. 点击生成以渲染 Dockerfile(以及 .dockerignore),并使用复制导出。
多阶段构建行为
启用多阶段后,每个模板会发出一个编译应用的 builder 阶段,然后是一个更小的生产阶段。Go 和 Rust 会切换到 alpine:latest 并添加 ca-certificates;Java 切换到 eclipse-temurin:21-jre-alpine,并将构建好的 jar 复制为 app.jar;Nginx 使用 node:20-alpine 作为 builder,并将配置的构建输出目录复制到 /usr/share/nginx/html。.dockerignore 块会列出框架特定的排除项,如 node_modules、target/、__pycache__ 或 vendor/。
▶为什么 Java 模板会询问构建工具?
Java 会显示一个 Maven/Gradle 选择器,因为生成的构建命令不同:Maven 对 pom.xml 运行 `mvn clean package -DskipTests` 并复制 target/*.jar,而 Gradle 运行 `./gradlew build -x test` 并复制 build/libs/*.jar。
▶Python 的额外字段是做什么的?
Python 提供一个 `pip install` 输入(默认 `-r requirements.txt`),以便你自定义依赖安装,例如切换到不同的 requirements 文件或单个包列表。
▶切换框架时会记住每个框架的设置吗?
会。每个框架在组件状态中保留自己的配置和额外值,因此切换回之前的框架会恢复你上次输入的值。
▶我的数据会发送到服务器吗?
不会。Dockerfile 是根据你的表单状态从本地模板函数组装的;不会上传任何内容。
如果这个工具对你有帮助的话,请考虑请我喝杯咖啡。
请给我买杯咖啡吧。