-
Notifications
You must be signed in to change notification settings - Fork 7
Docs/local setup instructions #306
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
- Add comprehensive LOCAL_SETUP.md guide covering: - Setup with and without Traefik - Database initialization with and without backups - Secrets configuration - Common troubleshooting issues (Semantic MediaWiki maintenance screen, missing images, etc.) - Instructions for updating images from Google Cloud Storage - Common maintenance tasks and commands - Update README.md to reference the new local setup documentation This addresses issue #261 by documenting the complete process for running BugSigDB locally, including all troubleshooting steps discovered during testing.
… for local development - Add docs/LOCAL_SETUP.md with step-by-step instructions for running BugSigDB locally - Update README.md to reference the new local setup documentation - Configure compose.yml for local setup without Traefik: - Add port mapping to varnish service (localhost:8081) - Comment out network sections for local development - Make MW_SITE_SERVER configurable via environment variable - Add MW_DB_INSTALLDB_PASS for database initialization - Update MW_ADMIN_PASS to use environment variable - Document troubleshooting steps for common setup issues - Include instructions for both empty database and production backup scenarios - Add notes about required environment variables (MW_ADMIN_PASS, MW_DB_INSTALLDB_PASS) This addresses issue #261 by providing comprehensive documentation for local setup.
|
Hi @jwokaty . This looks to be the final one to be tested |
|
@RonaldRonnie Can #305 be closed (assuming that one is not needed)? |
|
… On Tue, 16 Dec 2025 at 12:24 AM, jwokaty ***@***.***> wrote:
*jwokaty* left a comment (waldronlab/BugSigDB#306)
<#306 (comment)>
@RonaldRonnie <https://github.com/RonaldRonnie> Can #305
<#305> be closed (assuming
that one is not needed)?
—
Reply to this email directly, view it on GitHub
<#306 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/BBVREPY2LYY3EGG4XH3FMPL4B4RH3AVCNFSM6AAAAACO36DYVCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZTMNJXGY3DSMRQGI>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@RonaldRonnie Thanks for your PR. It's very thorough, which I like in documentation.
Please see the inline comments. I've also tried to include the ones made by Ike (tosfos) on the old PR.
I agree with Ike that it would be better to make a local compose to override settings rather than edit the compose.yaml (as mistakes happen). This should change your instructions but greatly simplify them for the end user. Similarly, it might be helpful to also have a corresponding local env.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's not edit the compose.yml. As @tosfos suggested #305 (comment), let's make a compose.local.yml to override settings as he suggested.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe this is what we should do: https://docs.docker.com/compose/how-tos/multiple-compose-files/extends/.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This document needs to go back to the original.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Having just set up the wiki again locally for something else, some of the changes in this file are indeed needed (adding MW_DB_INSTALLDB_PASS and fixing MW_ADMIN_PASS) and others are fine (MW_SITE_SERVER), I left notes inline about the changes that will conflict with how WikiTeq uses this repo
…g compose.yml - Create compose.local.yml for local development without Traefik - Update documentation to use docker compose -f compose.yml -f compose.local.yml - Move Secrets Configuration section before first docker compose up - Remove DNS record configuration step (not needed for localtest.me) - Update all docker compose commands to specify local vs Traefik setup - Clarify that MW_DB_INSTALLDB_PASS is already configured in compose.yml
|
Thanks @RonaldRonnie. I need to follow the instructions to finish the review. I will try to finish this week. |
|
Thank you |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Having just set up the wiki again locally for something else, some of the changes in this file are indeed needed (adding MW_DB_INSTALLDB_PASS and fixing MW_ADMIN_PASS) and others are fine (MW_SITE_SERVER), I left notes inline about the changes that will conflict with how WikiTeq uses this repo
| - MW_RECAPTCHA_SECRET_KEY=${MW_RECAPTCHA_SECRET_KEY:-} | ||
| - MW_ADMIN_USER=admin | ||
| - MW_ADMIN_PASSWORD | ||
| - MW_ADMIN_PASS=${MW_ADMIN_PASS:-anyotherpassword} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
good catch, you will also want to update .env.example with the correct name
| networks: | ||
| - default | ||
| - traefik-public | ||
| #networks: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
please leave the network configuration, you can override it in the compose.local.yml file. You can se how I do that for my own personal website setup which also uses traefik at https://github.com/DanielEScherzer/website-content/blob/main/docker-compose.local.yml - adding networks: !reset [] to an individual service will revert the addition of traefik-public, and adding networks: !reset [] to the overall file will remove the dependence on that netwok
| # - traefik-public | ||
| depends_on: | ||
| - web | ||
| ports: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
like with the network changes, this should be done via a compose.local.yml override
| cp database.sql ./__initdb/ | ||
| ``` | ||
|
|
||
| **Important:** The database file must be placed in the `__initdb/` directory before running `docker compose -f compose.yml -f compose.local.yml up -d --no-start` (for local setup without Traefik) or `docker compose up -d --no-start` (for setup with Traefik). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
for all of the various docker compose commands with -f for multiple files, you may want to instead suggest using https://docs.docker.com/compose/how-tos/environment-variables/envvars/#compose_file to list the files in the .env configuration instead of needing to include them each time in the command line
This would also mean you don't have to give two different commands for the with and without traefik versions
| docker compose up -d db | ||
| ``` | ||
|
|
||
| # Access the web container (use -f flags if using local setup) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
here and for the next few lines the formatting is off, these don't all need to be section headings (e.g. for docker compose exec web bash) and should be code blocks (for the instructions to create a database manually)
|
|
||
| # Start all containers (use compose.local.yml for local setup without Traefik) | ||
| docker compose -f compose.yml -f compose.local.yml up -d | ||
| ``` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
unclear if this is meant to start or end a code block, but it makes the entire networking options section show as a code block
|
|
||
| # Download images directory (this will download to current directory) | ||
| gcloud storage cp --recursive gs://backups.bugsigdb.org/images . | ||
| ``` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
another unmatched ```
This addresses issue #261 by providing comprehensive documentation for local setup."