From 8fd88e4c3f46ff92c710d09dafe756a5c7129606 Mon Sep 17 00:00:00 2001 From: ket4yii Date: Sun, 5 Feb 2017 21:29:18 +0300 Subject: [PATCH] Add phpcensor worker image. Separate worker and web part --- Dockerfile => phpcensor/Dockerfile | 0 config.tmpl.yml => phpcensor/config.tmpl.yml | 0 entrypoint.sh => phpcensor/entrypoint.sh | 0 nginx.conf => phpcensor/nginx.conf | 0 worker/Dockerfile | 30 ++++++++++++ worker/config.tmpl.yml | 49 ++++++++++++++++++++ worker/entrypoint.sh | 8 ++++ 7 files changed, 87 insertions(+) rename Dockerfile => phpcensor/Dockerfile (100%) rename config.tmpl.yml => phpcensor/config.tmpl.yml (100%) rename entrypoint.sh => phpcensor/entrypoint.sh (100%) rename nginx.conf => phpcensor/nginx.conf (100%) create mode 100644 worker/Dockerfile create mode 100644 worker/config.tmpl.yml create mode 100755 worker/entrypoint.sh diff --git a/Dockerfile b/phpcensor/Dockerfile similarity index 100% rename from Dockerfile rename to phpcensor/Dockerfile diff --git a/config.tmpl.yml b/phpcensor/config.tmpl.yml similarity index 100% rename from config.tmpl.yml rename to phpcensor/config.tmpl.yml diff --git a/entrypoint.sh b/phpcensor/entrypoint.sh similarity index 100% rename from entrypoint.sh rename to phpcensor/entrypoint.sh diff --git a/nginx.conf b/phpcensor/nginx.conf similarity index 100% rename from nginx.conf rename to phpcensor/nginx.conf diff --git a/worker/Dockerfile b/worker/Dockerfile new file mode 100644 index 0000000..e28bb54 --- /dev/null +++ b/worker/Dockerfile @@ -0,0 +1,30 @@ +FROM php:7.0.15-alpine + +MAINTAINER Alexey Boyko + +ENV PHPCENSOR_VERSION=0.7.0 + +WORKDIR /var/www/html + +RUN apk update && \ + apk add git openssh postgresql-dev gettext && \ + curl -sS https://getcomposer.org/installer | php && \ + mv composer.phar /usr/bin/composer + +RUN docker-php-ext-install -j$(grep -c ^processor /proc/cpuinfo) pdo pdo_mysql pdo_pgsql + +RUN git clone https://github.com/corpsee/php-censor.git . +RUN composer install + +ADD entrypoint.sh / +ADD config.tmpl.yml / + +ENV DB_HOST=localhost +ENV DB_TYPE=mysql +ENV DB_NAME=phpcensor +ENV DB_USER=phpcensor +ENV DB_PASS=changethepass +ENV BEANSTALK_HOST=beanstalk +ENV BEANSTALK_QUEUE_NAME=phpcensor + +ENTRYPOINT ["/entrypoint.sh"] diff --git a/worker/config.tmpl.yml b/worker/config.tmpl.yml new file mode 100644 index 0000000..64c785c --- /dev/null +++ b/worker/config.tmpl.yml @@ -0,0 +1,49 @@ +b8: + database: + servers: + read: + - host: $LOCAL_DB_HOST + port: $LOCAL_DB_PORT + write: + - host: $LOCAL_DB_HOST + port: $LOCAL_DB_PORT + type: $DB_TYPE + name: $DB_NAME + username: $DB_USER + password: $DB_PASS +php-censor: + language: en + per_page: 10 + url: '$SITE_URL' + email_settings: + from_address: $SMTP_FROM + smtp_address: $SMTP_HOST + smtp_port: $SMTP_PORT + smtp_username: $SMTP_USER + smtp_password: $SMTP_PASSWORD + default_mailto_address: $SMTP_DEFAULTTO + smtp_encryption: $SMTP_ENCRYPT + queue: + host: $BEANSTALK_HOST + name: $BEANSTALK_QUEUE_NAME + lifetime: 600 + github: + token: $GITHUB_TOKEN + comments: + commit: false + pull_request: false + build: + remove_builds: true + security: + disable_auth: false + default_user_id: 1 + auth_providers: + internal: + type: internal + ldap: + type: ldap + data: + host: $LDAP_HOST + port: $LDAP_PORT + base_dn: $LDAP_BASE_DN + mail_attribute: $LDAP_MAIL_ATTRIBUTE diff --git a/worker/entrypoint.sh b/worker/entrypoint.sh new file mode 100755 index 0000000..03c2fb7 --- /dev/null +++ b/worker/entrypoint.sh @@ -0,0 +1,8 @@ +#!/bin/sh +set -eo pipefail + +export LOCAL_DB_HOST=$(echo $DB_HOST | awk -F ":" '{ print $1 }') +export LOCAL_DB_PORT=$(echo $DB_HOST | awk -F ":" '{ print $2; }') + +[ ! -f ./app/config.yml ] && envsubst < /config.tmpl.yml > ./app/config.yml +./bin/console php-censor:worker