bukharovsi/docker_plugin

这是一个使用composer构建Docker镜像的插件

安装: 10

依赖: 0

建议者: 0

安全: 0

星标: 0

关注者: 3

分支: 0

开放问题: 1

类型:composer-plugin

2.0.2 2017-02-17 11:18 UTC

This package is not auto-updated.

Last update: 2024-09-28 20:40:51 UTC


README

Build Status Codacy Badge Dependency Status

PHP Docker插件是composer的一个插件,帮助构建和推送Docker镜像。这对于持续集成非常有用。此插件允许您定义镜像名称、计算标签并生成报告。

当您使用此插件时,仍然需要Dockerfile。插件仅简化了自动化构建!

基本用法

如果您已经有了Dockerfile并且可以手动构建镜像,只需安装插件并立即构建镜像并将其推送到Docker仓库

php composer.phar require bukharovsi/docker_plugin
php composer.phar docker:build
php composer.phar docker:push

您将得到带有标签的Docker镜像:<your_project_name>:<your_project_version>

高级用法

如何更改项目默认值?

默认值可以在composer.json中更改,也可以使用控制台参数

composer.json中更改项目默认值

composer.jsonextra部分定义

"extra": {
    "docker": {
          "name": "wine_the_pooh.com/honey",
          "version": "1.0",
          "dockerfile": "Dockerfile",
          "workingdirectory": "."
    }
}

所有定义都是可选的

使用控制台参数更改项目默认值

所有参数都是可选的

php composer.phar docker:build --name wine_the_pooh.com --tag latest --dockerfile Dockerfile --workingdirectory /var/www/wine_the_pooh

从Git获取镜像版本

如果您使用Git进行版本控制或git flow,您可以根据当前的Git分支或Git标签生成镜像标签。要使用此功能,请在composer.json中指定"version":"@vcs"或向composer docker:buildcomposer docker:push命令添加--tag @vcs。Git标签如何转换为Docker标签?

与Teamcity集成

Docker插件可以通知Teamcity关于构建的镜像版本。此插件使用Teamcity环境变量

  • env.BuildTag
  • env.BuildTag.1
  • env.BuildTag.2
  • ...
  • env.BuildTag.n

运行composer docker:build后,您可以在脚本中使用%env.BuildTag%和其他变量