Custom PHP application
Go to file
Mayel 1500ca7324 attempt to install pdo_mysql php ext 2021-09-07 16:53:11 +12:00
.drone.yml rename to custom-php 2021-07-14 21:03:49 +02:00
.env.sample attempt to install pdo_mysql php ext 2021-09-07 16:53:11 +12:00
.gitignore Update for Current Exciting Sep 2020 Best-Practice 2020-09-11 01:30:10 +02:00
LICENSE Init this new WP setup 2020-05-03 00:21:33 +02:00
README.md attempt to install pdo_mysql php ext 2021-09-07 16:53:11 +12:00
abra.sh attempt to install pdo_mysql php ext 2021-09-07 16:53:11 +12:00
compose.mailrelay.yml Unbreak mailrelay config 2021-06-02 11:20:24 +02:00
compose.mariadb.yml attempt to install pdo_mysql php ext 2021-09-07 16:53:11 +12:00
compose.smtp.yml Fix syntax 2021-06-02 11:22:54 +02:00
compose.yml attempt to install pdo_mysql php ext 2021-09-07 16:53:11 +12:00
entrypoint.mailrelay.sh.tmpl Various un-breaking 2020-10-24 20:13:56 +02:00
entrypoint.sh.tmpl attempt to install pdo_mysql php ext 2021-09-07 16:53:11 +12:00
msmtp.conf.tmpl Add missing from 2021-06-02 08:36:52 +02:00
nginx.conf configurable php version, root_path, fix db host 2021-07-14 23:57:43 +02:00
renovate.json Add renovate.json 2020-09-14 20:03:20 +00:00
uploads.ini Enable additional PHP extensions 2020-10-23 04:15:35 +02:00

README.md

custom-php

Coöp Cloud + PHP + MariaDB (optional) + Nginx = 🥳

  • Category: Apps
  • Status: ❶💚
  • Image: php, ❶💚, upstream
  • Healthcheck: Yes
  • Backups: Yes
  • Email: ❶💚
  • Tests: ❷💛
  • SSO: No

Basic usage

  1. Set up Docker Swarm and abra
  2. Deploy coop-cloud/traefik
  3. abra app new custom-php --secrets (optionally with --pass if you'd like to save secrets in pass)
  4. abra app YOURAPPDOMAIN config
    • be sure to change $DOMAIN to something that resolves to your Docker swarm box
    • if you need to enable the optional database, uncomment COMPOSE_FILE="compose.yml:compose.mariadb.yml" in which case configure your site to load the DB credentials from env:
      • getenv('DB_NAME');
      • getenv('DB_HOST');
      • getenv('DB_USER');
      • @file_get_contents(getenv('DB_PASSWORD_FILE'));
  5. Deploy with abra app YOURAPPDOMAIN deploy
  6. Copy your site files using something like: abra app YOURAPPDOMAIN cp index.html app:/var/www/html/ or if you want to copy an entire directory: tar -cf - -C my_site/path/here . | abra app YOURAPPDOMAIN cp - app:/var/www/html/
  7. Use restore functionality to import a SQL file into the db
  8. Open the configured domain in your browser to check all is good

Extra

You can see what PHP extensions compiled into the image, by checking the output of: - abra app YOURAPPDOMAIN run app "php -m"

You can see the PHP config and environment, by checking the output of: - abra app YOURAPPDOMAIN run app "php -i"

Email

There is a local or remote SMTP relay configuration available.

  • local: COMPOSE_FILE=compose.yml:compose.mailrelay.yml
  • remote: COMPOSE_FILE=compose.yml:compose.mailrelay.yml:compose.smtp.yml

Below are the instructions for the local relay.

  1. Deploy postfix-relay
  2. abra app YOURAPPDOMAIN config, and uncomment the email lines; change MAIL_FROM to make sure the domain is the same as postfix-relay's $DOMAIN or in its $EXTRA_SENDER_DOMAINS
  3. abra app YOURAPPDOMAIN deploy