bukharovsi / docker_plugin
这是一个使用composer构建Docker镜像的插件
2.0.2
2017-02-17 11:18 UTC
Requires
- composer-plugin-api: ^1.1
- adambrett/shell-wrapper: dev-master
- cypresslab/gitelephant: dev-commitsCanSearchOwnTags
- league/plates: 3.*
- symfony/console: >=2.6
Requires (Dev)
- fzaninotto/faker: *@dev
- mockery/mockery: *@dev
- pdepend/pdepend: *@dev
- php-mock/php-mock-phpunit: ^1.1
- phpmd/phpmd: *@dev
- phpunit/phpunit: 5.5.*
- squizlabs/php_codesniffer: *@dev
This package is not auto-updated.
Last update: 2024-09-28 20:40:51 UTC
README
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.json的extra部分定义
"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:build和composer docker:push命令添加--tag @vcs。Git标签如何转换为Docker标签?
与Teamcity集成
Docker插件可以通知Teamcity关于构建的镜像版本。此插件使用Teamcity环境变量
env.BuildTagenv.BuildTag.1env.BuildTag.2- ...
env.BuildTag.n
运行composer docker:build后,您可以在脚本中使用%env.BuildTag%和其他变量