Compare commits

..

1 Commits

Author SHA1 Message Date
3wc
9f41e313aa Working? 2021-12-03 15:54:54 +02:00
24 changed files with 5602 additions and 1565 deletions

32
.gitignore vendored
View File

@ -1,26 +1,28 @@
# Application
/src/web/app/plugins/*
/src/!web/app/plugins/.gitkeep
/src/web/app/mu-plugins/*
/src/web/app/upgrade
/src/web/app/uploads/*
/src/!web/app/uploads/.gitkeep
/bedrock/web/app/plugins/*
/bedrock/!web/app/plugins/.gitkeep
/bedrock/web/app/mu-plugins/*/
/bedrock/web/app/upgrade
/bedrock/web/app/uploads/*
/bedrock/!web/app/uploads/.gitkeep
# WordPress
/src/web/wp
/src/web/.htaccess
/bedrock/web/wp
/bedrock/web/.htaccess
# Logs
/src/**/*.log
*.log
# Dotenv
/src/.env
/src/.env.*
!/src/.env.example
!/src/.env.sample
.env
.env.*
!.env.example
/bedrock/.env
/bedrock/.env.*
/bedrock/!.env.example
# Composer
/src/vendor
/bedrock/vendor
# WP-CLI
/src/wp-cli.local.yml
wp-cli.local.yml

7
Dockerfile Normal file
View File

@ -0,0 +1,7 @@
FROM php:8.0-apache
COPY entrypoint-wordpress.sh /usr/local/bin/
COPY apache-docker.conf /etc/apache2/sites-enabled/
ENTRYPOINT /usr/local/bin/entrypoint-wordpress.sh

View File

@ -1,10 +0,0 @@
# wordpress-bedrock-docker
A template for a Wordpress site using Bedrock (Composer) + Docker.
## Quick start
1. Create a new repository in Gitea, using this repository as a template
2. Clone the new repository
3. Copy `src/.env.example` to `src/.env`
4. Run `docker-compose up`

17
apache-docker.conf Normal file
View File

@ -0,0 +1,17 @@
<VirtualHost *:80>
ServerName localhost
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/web
ErrorLog /var/log/apache2/error.log
CustomLog /var/log/apache2/access.log combined
<Directory /var/www/html>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>

View File

@ -1,17 +1,17 @@
DB_NAME='wordpress'
DB_USER='wordpress'
DB_PASSWORD='wordpress'
DB_NAME='database_name'
DB_USER='database_user'
DB_PASSWORD='database_password'
# Optionally, you can use a data source name (DSN)
# When using a DSN, you can remove the DB_NAME, DB_USER, DB_PASSWORD, and DB_HOST variables
# DATABASE_URL='mysql://database_user:database_password@database_host:database_port/database_name'
# Optional database variables
DB_HOST='db'
# DB_HOST='localhost'
# DB_PREFIX='wp_'
WP_ENV='development'
WP_HOME='http://localhost'
WP_HOME='http://example.com'
WP_SITEURL="${WP_HOME}/wp"
# Specify optional debug.log path

View File

@ -39,7 +39,8 @@
"roots/bedrock-disallow-indexing": "^2.0",
"roots/wordpress": "5.8.2",
"roots/wp-config": "1.0.0",
"roots/wp-password-bcrypt": "1.1.0"
"roots/wp-password-bcrypt": "1.1.0",
"wp-cli/wp-cli-bundle": "^2.5"
},
"require-dev": {
"squizlabs/php_codesniffer": "^3.6.0",

5489
bedrock/composer.lock generated Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,16 @@
<?php
/**
* Plugin Name: Bedrock Autoloader
* Plugin URI: https://github.com/roots/bedrock-autoloader
* Description: An autoloader that enables standard plugins to be required just like must-use plugins. The autoloaded plugins are included during mu-plugin loading. An asterisk (*) next to the name of the plugin designates the plugins that have been autoloaded.
* Version: 1.0.3
* Author: Roots
* Author URI: https://roots.io/
* License: MIT License
*/
namespace Roots\Bedrock;
if (is_blog_installed() && class_exists(Autoloader::class)) {
new Autoloader();
}

View File

@ -0,0 +1,14 @@
<?php
/**
* Plugin Name: Register Theme Directory
* Plugin URI: https://github.com/roots/bedrock/
* Description: Register default theme directory
* Version: 1.0.0
* Author: Roots
* Author URI: https://roots.io/
* License: MIT License
*/
if (!defined('WP_DEFAULT_THEME')) {
register_theme_directory(ABSPATH . 'wp-content/themes');
}

View File

@ -1,25 +1,27 @@
---
version: '3.1'
version: "3"
services:
web:
image: nginx:alpine
working_dir: /app
wordpress:
image: "thecoopcloud/wordpress:5.8.2-php7.4"
build: .
ports:
- "80:80"
volumes:
- ./nginx.conf:/etc/nginx/conf.d/default.conf:cached
- ./src:/app:cached
php:
image: "thecoopcloud/wordpress:5.8.2-php7.4-fpm-bedrock"
working_dir: /app
user: 1000:1000
volumes:
- ./src:/app:cached
- "./bedrock/:/var/www/html/"
- "./entrypoint-wordpress.sh:/usr/local/bin/entrypoint-wordpress.sh"
environment:
- WORDPRESS_DB_HOST=db
- WORDPRESS_DB_USER=wordpress
- WORDPRESS_DB_PASSWORD=wordpress
- WORDPRESS_DB_NAME=wordpress
- WORDPRESS_CONFIG_EXTRA=${WORDPRESS_CONFIG_EXTRA}
- WORDPRESS_DEBUG=${WORDPRESS_DEBUG}
- PHP_EXTENSIONS
container_name: "${PROJECT_NAME}_wordpress"
db:
image: mariadb:10.4
image: "mariadb:10.6"
volumes:
- "mariadb:/var/lib/mysql"
environment:
@ -27,6 +29,10 @@ services:
- MYSQL_DATABASE=wordpress
- MYSQL_USER=wordpress
- MYSQL_PASSWORD=wordpress
container_name: "${PROJECT_NAME}_db"
volumes:
mariadb:
networks:
backend:

15
entrypoint-wordpress.sh Executable file
View File

@ -0,0 +1,15 @@
#!/bin/bash
if [ -n "$PHP_EXTENSIONS" ]; then
docker-php-ext-install "$PHP_EXTENSIONS"
fi
chown -R www-data:www-data /var/www/html
if [ -n "$*" ]; then
"$@"
fi
# Upstream ENTRYPOINT
# https://github.com/docker-library/wordpress/blob/master/php7.4/apache/Dockerfile#L120
apache2-foreground

View File

@ -1,48 +0,0 @@
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
client_max_body_size 128M;
gzip on;
gzip_proxied any;
gzip_types text/plain text/xml text/css application/x-javascript;
gzip_vary on;
gzip_disable "MSIE [1-6]\.(?!.*SV1)";
sendfile on;
sendfile_max_chunk 512k;
root /app/web;
access_log off;
location / {
include /etc/nginx/mime.types;
root /app/web;
index index.html index.htm index.php;
try_files $uri $uri/ /index.php?q=$uri&$args;
}
location ~ .php$ {
include fastcgi.conf;
fastcgi_read_timeout 300;
fastcgi_pass php:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /app/web/$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_param PHP_VALUE "error_log=/var/log/nginx/application_php_errors.log";
fastcgi_buffers 16 16k;
fastcgi_buffer_size 32k;
include fastcgi_params;
}
}

1472
src/composer.lock generated

File diff suppressed because it is too large Load Diff