docker-compose.yml
version: '3.8'
x-build: &build
context: '.'
x-defaults: &defaults
restart: 'unless-stopped'
tty: true
x-volume-composer-cache: &volume-composer-cache './docker/composer/cache:/root/.composer/cache'
x-volume-runkit-config: &volume-runkit-config './docker/php/conf.d/runkit.ini:/usr/local/etc/php/conf.d/runkit.ini'
x-volume-runkit7-config: &volume-runkit7-config './docker/php/conf.d/runkit7.ini:/usr/local/etc/php/conf.d/runkit7.ini'
x-volume-source: &volume-source '.:/usr/src/yii2-json-editor'
x-volume-xdebug-3-config:
&volume-xdebug-3-config './docker/php/conf.d/xdebug-3.ini:/usr/local/etc/php/conf.d/xdebug.ini'
services:
'5.6':
<<: *defaults
build:
<<: *build
args:
PHP_VERSION: '5.6-cli'
target: 'debian-runkit'
image: 'yii2-json-editor-5.6'
volumes:
- *volume-composer-cache
- *volume-runkit-config
- *volume-source
- 'vendor-5.6:/usr/src/yii2-json-editor/vendor'
'5.6-alpine':
<<: *defaults
build:
<<: *build
args:
PHP_VERSION: '5.6-cli-alpine'
target: 'alpine'
image: 'yii2-json-editor-5.6-alpine'
volumes:
- *volume-composer-cache
- *volume-source
- 'vendor-5.6-alpine:/usr/src/yii2-json-editor/vendor'
'7.4':
<<: *defaults
build:
<<: *build
args:
PHP_VERSION: '7.4-cli'
target: 'debian-runkit7'
image: 'yii2-json-editor-7.4'
volumes:
- *volume-composer-cache
- *volume-runkit7-config
- *volume-source
- *volume-xdebug-3-config
- 'vendor-7.4:/usr/src/yii2-json-editor/vendor'
'7.4-alpine':
<<: *defaults
build:
<<: *build
args:
PHP_VERSION: '7.4-cli-alpine'
target: 'alpine'
image: 'yii2-json-editor-7.4-alpine'
volumes:
- *volume-composer-cache
- *volume-source
- *volume-xdebug-3-config
- 'vendor-7.4-alpine:/usr/src/yii2-json-editor/vendor'
'8.1':
<<: *defaults
build:
<<: *build
args:
PHP_VERSION: '8.1-cli'
target: 'debian-runkit7'
image: 'yii2-json-editor-8.1'
volumes:
- *volume-composer-cache
- *volume-runkit7-config
- *volume-source
- *volume-xdebug-3-config
- 'vendor-8.1:/usr/src/yii2-json-editor/vendor'
'8.1-alpine':
<<: *defaults
build:
<<: *build
args:
PHP_VERSION: '8.1-cli-alpine'
target: 'alpine'
image: 'yii2-json-editor-8.1-alpine'
volumes:
- *volume-composer-cache
- *volume-source
- *volume-xdebug-3-config
- 'vendor-8.1-alpine:/usr/src/yii2-json-editor/vendor'
volumes:
vendor-5.6:
vendor-5.6-alpine:
vendor-7.4:
vendor-7.4-alpine:
vendor-8.1:
vendor-8.1-alpine: