2024-03-05 16:35:20 -08:00
2024-02-21 18:14:59 -08:00
2024-03-05 16:35:20 -08:00
2024-02-21 18:14:59 -08:00
2024-02-22 08:57:38 -08:00

This is BrewBlogger 2.3.2, running in a PHP-FPM container. BrewBlogger can be thought of as kind of an online version of ProMash or BeerSmith. (If you're not a homebrewer, those names probably mean nothing to you.)

Quick-and-dirty instructions to bring it up:

  1. docker volume create brewblogger-html
  2. docker create --restart=unless-stopped --name brewblogger -p 9000:9000 -e DB_HOST=db_host -e DB_USER=db_user -e DB_PASSWD=db_passwd -e DB_SCHEMA=brewblogger -v brewblogger-html:/var/www/html salfter/brewblogger
  3. docker run -it --rm salfter/brewblogger ash
  4. mysql -h db_host -u root -p (then enter the root password for your database server)
  5. create database brewblogger;
  6. grant all privileges on brewblogger.* to db_user@'%' identified by 'db_passwd';
  7. flush privileges
  8. press Ctrl-D
  9. mysql -h db_host -u db_user --password=db_passwd brewblogger </var/www/html/db-schema.sql
  10. press Ctrl-D
  11. docker start brewblogger
  12. configure your webserver to send traffic to port 9000
  13. initial login credentials: username is admin, password is user

example Nginx config block, lightly edited from what I'm using (note that I use two Docker networks: www to carry traffic between Nginx and the various website containers, and sql to carry traffic between MariaDB and containers that need database access):

server 
{ 
  listen 443 ssl; 
  listen [::]:443 ssl;
  server_name example.invalid.tld; 
  ssl_certificate /path/to/fullchain.pem;
  ssl_certificate_key /path/to/privkey.pem;
  root /var/www/brewblogger; 

  index index.php; 

  location /
  {
    try_files $uri $uri/ /index.php?$args;
  }

  location ~ [^/]\.php(/|$) 
  { 
    fastcgi_split_path_info ^(.+?\.php)(/.*)$;
    if (!-f $document_root$fastcgi_script_name) 
    {
      return 404;
    }

    include fastcgi_params;
    fastcgi_param SCRIPT_FILENAME /var/www/html$fastcgi_script_name;
    fastcgi_param PATH_INFO       $fastcgi_path_info;
    fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;

    fastcgi_pass   brewblogger.www:9000;
    fastcgi_index  index.php; 
  } 
}

The brewblogger-html volume is intended to be mounted by your webserver container as well as BrewBlogger.

Description
No description provided
Readme 38 KiB
Languages
Dockerfile 79%
Shell 21%