Add php support for legacy services
This commit is contained in:
parent
216ff47574
commit
4b8b64d893
5
services/legacy/config/Dockerfile.j2
Normal file
5
services/legacy/config/Dockerfile.j2
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
FROM php:{{ version }}-fpm-alpine
|
||||||
|
|
||||||
|
COPY --from=mlocati/php-extension-installer /usr/bin/install-php-extensions /usr/local/bin/
|
||||||
|
|
||||||
|
RUN install-php-extensions {{ php_extensions|join(" ") }}
|
@ -13,3 +13,9 @@ services:
|
|||||||
labels:
|
labels:
|
||||||
- traefik.enable=true
|
- traefik.enable=true
|
||||||
- traefik.http.services.{{ service }}.loadbalancer.server.port=80
|
- traefik.http.services.{{ service }}.loadbalancer.server.port=80
|
||||||
|
{% for version in php_versions %}
|
||||||
|
php-{{ version|replace('.', '') }}:
|
||||||
|
image: kadet/php:{{ version }}
|
||||||
|
volumes:
|
||||||
|
- "{{ www_root }}:/var/www"
|
||||||
|
{% endfor %}
|
||||||
|
21
services/legacy/tasks/_docker.yml
Normal file
21
services/legacy/tasks/_docker.yml
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
---
|
||||||
|
- name: "Create directory for {{ version }}"
|
||||||
|
file:
|
||||||
|
path: "{{ remote_service_path }}/.docker/{{ version }}"
|
||||||
|
state: directory
|
||||||
|
|
||||||
|
- name: "Create Dockerfile for {{ version }}"
|
||||||
|
template:
|
||||||
|
src: "{{ service_path }}/config/Dockerfile.j2"
|
||||||
|
dest: "{{ remote_service_path }}/.docker/{{ version }}/Dockerfile"
|
||||||
|
register: dockerfile
|
||||||
|
|
||||||
|
- name: "Build and tag docker image for php {{ version }}"
|
||||||
|
community.docker.docker_image:
|
||||||
|
name: kadet/php
|
||||||
|
tag: "{{ version }}"
|
||||||
|
build:
|
||||||
|
path: "{{ remote_service_path }}/.docker/{{ version }}"
|
||||||
|
source: build
|
||||||
|
force_source: "{{ dockerfile.changed or update_images|default(false) }}"
|
||||||
|
force_tag: "{{ dockerfile.changed or update_images|default(false) }}"
|
@ -5,7 +5,7 @@
|
|||||||
state: directory
|
state: directory
|
||||||
owner: "{{ ansible_user }}"
|
owner: "{{ ansible_user }}"
|
||||||
tags:
|
tags:
|
||||||
- config
|
- configa
|
||||||
|
|
||||||
- name: 'Copy sites configuration to remote server'
|
- name: 'Copy sites configuration to remote server'
|
||||||
template:
|
template:
|
||||||
@ -16,3 +16,9 @@
|
|||||||
loop_var: file
|
loop_var: file
|
||||||
tags:
|
tags:
|
||||||
- config
|
- config
|
||||||
|
|
||||||
|
- name: "Create docker images for php-fpm"
|
||||||
|
include_tasks: "{{ service_path }}/tasks/_docker.yml"
|
||||||
|
loop: "{{ php_versions }}"
|
||||||
|
loop_control:
|
||||||
|
loop_var: version
|
||||||
|
@ -3,3 +3,11 @@ www_root: /var/www
|
|||||||
www_data_users: []
|
www_data_users: []
|
||||||
|
|
||||||
php_versions: ['7.1', '7.3']
|
php_versions: ['7.1', '7.3']
|
||||||
|
php_extensions:
|
||||||
|
- bcmath
|
||||||
|
- gd
|
||||||
|
- opcache
|
||||||
|
- pdo_mysql
|
||||||
|
- redis
|
||||||
|
- sockets
|
||||||
|
- zip
|
||||||
|
@ -30,6 +30,7 @@
|
|||||||
with_fileglob: "{{ services_root }}/{{ service }}/tasks/*"
|
with_fileglob: "{{ services_root }}/{{ service }}/tasks/*"
|
||||||
loop_control:
|
loop_control:
|
||||||
loop_var: service_task_file
|
loop_var: service_task_file
|
||||||
|
when: service_task_file|basename is not regex('^_')
|
||||||
tags:
|
tags:
|
||||||
- always
|
- always
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user