@xiawang1024/build-docker
v2.2.3
Published
一个用于简化 Docker 镜像构建的命令行工具。
Readme
build-docker
一个用于简化 Docker 镜像构建的命令行工具。
简介
build-docker 是一个 Node.js 命令行工具,旨在帮助开发者更便捷地构建 Docker 镜像。它支持交互式提示,允许用户自定义镜像名称和标签,并自动生成 Dockerfile、.dockerignore 和 nginx.conf 文件。该工具还支持直接构建镜像并将其推送到 Harbor 镜像仓库。
安装
npm install -g @xiawang1024/build-docker使用
build-docker [options]选项
-p, --project-path <path>: 项目路径,默认为当前目录 (.)。-i, --image-name <name>: Docker 镜像名称。默认为package.json中的name字段。-t, --image-tag <tag>: Docker 镜像标签。--no-prompt: 禁用交互式提示。--build: 直接构建镜像,不生成文件。
示例
交互式构建镜像 (推荐):
build-docker运行后,会提示你选择镜像标签,并输入镜像名称,最后会确认是否构建和推送镜像。
指定镜像名称和标签,并禁用交互式提示:
build-docker -i my-app -t latest --no-prompt这将使用
my-app作为镜像名称,latest作为镜像标签,并直接开始构建。指定项目路径:
build-docker -p /path/to/my/project指定项目路径后,会在该项目路径下生成 Dockerfile 和其他相关文件,并在该路径下构建镜像。
只构建镜像,不生成文件:
build-docker -i my-app -t latest --build直接构建镜像,不生成 Dockerfile 和其他相关文件。
注意事项
- 确保你的项目目录下存在
package.json文件。 - 构建镜像前,请确保已经安装 Docker。
- 默认情况下,镜像会推送到
harbor.hndt.com/front/xiaw1024命名空间下的 Harbor 镜像仓库。 - 如果使用
--no-prompt选项,必须同时提供镜像名称和标签。 - 如果使用
--build选项,会直接构建镜像,不会生成Dockerfile,.dockerignore和nginx.conf文件。
交互式提示
如果没有提供 --no-prompt 选项,build-docker 会以交互式方式提示你:
- 选择 Docker 镜像标签: 默认选项为
latest, 也可选择develop。 - 输入镜像名称: 默认为
package.json中的name字段,可以自定义。 - 确认构建: 确认是否构建并推送镜像到 Harbor 镜像仓库。
目录结构
├── node_modules
├── package.json
├── package-lock.json
├── templates
│ ├── .dockerignore
│ ├── Dockerfile
│ └── nginx.conf
└── index.js在项目路径下,会生成以下文件
├── Dockerfile
├── .dockerignore
└── nginx.conf依赖
- Commander.js: 用于解析命令行参数。
- Inquirer.js: 用于创建交互式命令行界面。
- Chalk: 用于美化终端输出。
- Node.js 内置模块:
fs/promises,path,url,child_process
License
MIT
