mirror of
https://github.com/BookStackApp/BookStack.git
synced 2026-07-16 05:33:49 +03:00
Bookstack +docker + mariadb #5265
Closed
opened 2026-02-05 09:52:33 +03:00 by OVERLORD
·
14 comments
No Branch/Tag Specified
development
l10n_development
release
snyk-action
ci_and_static
mfa_key
phpstan_june26
MilnerMart/development
GamerClassN7/impersonations-for-admin
Zhey-on/feature/csp-image-css-controls-6033
tortillas5/development
llm_only
vectors
McTom234/oidc-key-algorithms
captcha_example
v26.05.2
v26.05.1
v26.05
v26.03.5
v26.03.4
v26.03.3
v26.03.2
v26.03.1
v26.03
v25.12.9
v25.12.8
v25.12.7
v25.12.6
v25.12.5
v25.12.4
v25.12.3
v25.12.2
v25.12.1
v25.12
v25.11.6
v25.11.5
v25.11.4
v24.11.4
v25.11.3
v25.11.2
v25.11.1
v25.11
v25.07.3
v25.07.2
v25.07.1
v25.07
v25.05.2
v25.05.1
v25.05
v25.02.5
v25.02.4
v25.02.3
v25.02.2
v25.02.1
v25.02
v24.12.1
v24.12
v24.10.3
v24.10.2
v24.10.1
v24.10
v24.05.4
v24.05.3
v24.05.2
v24.05.1
v24.05
v24.02.3
v24.02.2
v24.02.1
v24.02
v23.12.3
v23.12.2
v23.12.1
v23.12
v23.10.4
v23.10.3
v23.10.2
v23.10.1
v23.10
v23.08.3
v23.08.2
v23.08.1
v23.08
v23.06.2
v23.06.1
v23.06
v23.05.2
v23.05.1
v23.05
v23.02.3
v23.02.2
v23.02.1
v23.02
v23.01.1
v23.01
v22.11.1
v22.11
v22.10.2
v22.10.1
v22.10
v22.09.1
v22.09
v22.07.3
v22.07.2
v22.07.1
v22.07
v22.06.2
v22.06.1
v22.06
v22.04.2
v22.04.1
v22.04
v22.03.1
v22.03
v22.02.3
v22.02.2
v22.02.1
v22.02
v21.12.5
v21.12.4
v21.12.3
v21.12.2
v21.12.1
v21.12
v21.11.3
v21.11.2
v21.11.1
v21.11
v21.10.3
v21.10.2
v21.10.1
v21.10
v21.08.6
v21.08.5
v21.08.4
v21.08.3
v21.08.2
v21.08.1
v21.08
v21.05.4
v21.05.3
v21.05.2
v21.05.1
v21.05
v21.04.6
v21.04.5
v21.04.4
v21.04.3
v21.04.2
v21.04.1
v21.04
v0.31.8
v0.31.7
v0.31.6
v0.31.5
v0.31.4
v0.31.3
v0.31.2
v0.31.1
v0.31.0
v0.30.7
v0.30.6
v0.30.5
v0.30.4
v0.30.3
v0.30.2
v0.30.1
v0.30.0
v0.29.3
v0.29.2
v0.29.1
v0.29.0
v0.28.3
v0.28.2
v0.28.1
v0.28.0
v0.27.5
v0.27.4
v0.27.3
v0.27.2
v0.27.1
v0.27
v0.26.4
v0.26.3
v0.26.2
v0.26.1
v0.26.0
v0.25.5
v0.25.4
v0.25.3
v0.25.2
v0.25.1
v0.25.0
v0.24.3
v0.24.2
v0.24.1
v0.24.0
v0.23.2
v0.23.1
v0.23.0
v0.22.0
v0.21.0
v0.20.3
v0.20.2
v0.20.1
v0.20.0
v0.19.0
v0.18.5
v0.18.4
v0.18.3
v0.18.2
v0.18.1
v0.18.0
v0.17.4
v0.17.3
v0.17.2
v0.17.1
v0.17.0
v0.16.3
v0.16.2
v0.16.1
v0.16.0
v0.15.3
v0.15.2
v0.15.1
v0.15.0
v0.14.3
v0.14.2
v0.14.1
v0.14.0
v0.13.1
v0.13.0
v0.12.2
v0.12.1
v0.12.0
v0.11.2
v0.11.1
v0.11.0
v0.10.0
v0.9.3
v0.9.2
v0.9.1
v0.9.0
v0.8.2
v0.8.1
v0.8.0
v0.7.6
v0.7.5
v0.7.4
v0.7.3
0.7.2
v.0.7.1
v0.7.0
v0.6.3
v0.6.2
v0.6.1
v0.6.0
v0.5.0
Labels
Clear labels
🎨 Design
📖 Docs Update
🐛 Bug
🐛 Bug
:cat2:🐈 Possible duplicate
💿 Database
☕ Open to discussion
💻 Front-End
🐕 Support
🚪 Authentication
🌍 Translations
🔌 API Task
🏭 Back-End
⛲ Upstream
🔨 Feature Request
🛠️ Enhancement
🛠️ Enhancement
🛠️ Enhancement
❤️ Happy feedback
🔒 Security
🔍 Pending Validation
💆 UX
📝 WYSIWYG Editor
🌔 Out of scope
🔩 API Request
:octocat: Admin/Meta
🖌️ View Customization
❓ Question
🚀 Priority
🛡️ Blocked
🚚 Export System
♿ A11y
🔧 Maintenance
> Markdown Editor
pull-request
Mirrored from GitHub Pull Request
No Label
🐕 Support
Milestone
No items
No Milestone
Projects
Clear projects
No project
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: starred/BookStack#5265
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @Fabio-91 on GitHub (Apr 23, 2025).
Attempted Debugging
Searched GitHub Issues
Describe the Scenario
This deployment is part of a mockup test on a Synology NAS, aiming to evaluate BookStack in a self-hosted setup using Docker.
I’m deploying the application using two separate Docker containers via docker-compose:
bookstack_db (MariaDB, image: lscr.io/linuxserver/mariadb)
bookstack (BookStack, image: lscr.io/linuxserver/bookstack)
Both containers are connected via a custom Docker network named bookstack_net.
Volumes are locally mounted at /volume1/docker/bookstack.
❌ Errors Encountered
When launching the bookstack container, I get the following SQL errors:
SQLSTATE[HY000] [1045] — Access denied for user
SQLSTATE[HY000] [2002] — Connection refused
docker-compose.yml (Sanitized for clarity) :
version: "2"
services:
bookstack_db:
image: lscr.io/linuxserver/mariadb
container_name: bookstack_db
environment:
- PUID=1026
- PGID=100
- MYSQL_ROOT_PASSWORD=91-Montgeron-DB!
- TZ=Europe/Paris
- MYSQL_DATABASE=bookstackapp
- MYSQL_USER=bookstack
- MYSQL_PASSWORD=91-Montgeron-DB!
volumes:
- /volume1/docker/bookstack/db:/config
ports:
- 3306:3306
networks:
- bookstack_net
restart: unless-stopped
bookstack:
image: lscr.io/linuxserver/bookstack
container_name: bookstack
environment:
- PUID=1026
- PGID=100
- APP_URL=http://192.168.1.11:6875/
- APP_TIMEZONE=Europe/Paris
- DB_HOST=bookstack_db
- DB_PORT=3306
- DB_USER=bookstack
- DB_PASS=91-Montgeron-DB!
- DB_DATABASE=bookstackapp
- APP_KEY=base64:CClA6bWC3qhP6yMVQECyTblYtj7uAxOh0dDpi0BcZ5w=
volumes:
- /volume1/docker/bookstack/config:/config
ports:
- 6875:80
depends_on:
- bookstack_db
networks:
- bookstack_net
restart: unless-stopped
networks:
bookstack_net:
external: true
Exact BookStack Version
BookStack v23.12.1
Log Content
No response
Hosting Environment
pc tehcnique sur windows + NAS synoloy (DS216+II)
@Fabio-91 commented on GitHub (Apr 23, 2025):
Indeed, MySQL/MariaDB error 1045 (Access denied) can sometimes be resolved by enclosing the password in double quotes (").
"91-Montgeron-DB!"
@ssddanbrown commented on GitHub (Apr 23, 2025):
Hi @Fabio-91,
On recent linxuserver bookstack images, you should be using
DB_USERNAMEinstead ofDB_USER, andDB_PASSWORDinstead ofDB_PASS.As per #5587, you can use this recent reference compose file as a guide: https://codeberg.org/bookstack/devops/src/branch/main/config/lsio-docker/docker-compose.yml
@Fabio-91 commented on GitHub (Apr 24, 2025):
HI @ssddanbrown,
Update, I corrected the 2002 error by first deleting the default .env file located in ./bookstack_app_data/www/.env.
I then modified this file with my own parameters, and returned it to its original location.
After that, I checked the BookStack logs (./bookstack_app_data/log/bookstack/laravel.log), and the 2002 error had disappeared.
However, error 1045 still persists, even though I thought I'd fixed it by adding quotation marks around the password ("password").
@ssddanbrown commented on GitHub (Apr 24, 2025):
@Fabio-91 Environment variables set in the docker compose fill will take precedence over any
.envvalues.My suggestion (assuming this is a new instance) would be to start from fresh.
Delete all prior volumes/data/containers, then start again from our example compose file linked above.
You should not need to change any volume data files to get a working instance.
@Fabio-91 commented on GitHub (Apr 24, 2025):
@ssddanbrown
I started from scratch to do a test: I separated the two containers (BookStack and MariaDB), and strangely, it worked — no more MySQL-related errors. 👍
However, now I can't access the BookStack web page. The container is running fine, no visible errors, but nothing shows up when I try to open the URL.
Do you have any idea what I should check?
Here are the following screenshots to show the current situation:
User account:
Image:
Network:
UID:
Document:
MariaDB docker-compose.yml:
version: "3.8"
services:
mariadb:
image: lscr.io/linuxserver/mariadb
container_name: mariadb
environment:
- PUID=1026
- PGID=100
- TZ=Europe/Paris
- MYSQL_ROOT_PASSWORD=bookstack91421
- MYSQL_DATABASE=bookstack
- MYSQL_USER=bookstack
- MYSQL_PASSWORD=bookstack91421
volumes:
- ./db:/config
restart: unless-stopped
networks:
- bookstack_net
networks:
bookstack_net:
external: true
BookStack docker-compose.yml:
version: "3.8"
services:
bookstack:
image: lscr.io/linuxserver/bookstack
container_name: bookstack
environment:
- PUID=1026
- PGID=100
- TZ=Europe/Paris
- APP_URL=http://192.168.1.11:6875
- APP_KEY=base64:CClA6bWC3qhP6yMVQECyTblYtj7uAxOh0dDpi0BcZ5w=
- DB_HOST=mariadb
- DB_PORT=3306
- DB_DATABASE=bookstack
- DB_USERNAME=bookstack
- DB_PASSWORD=bookstack91421
volumes:
- ./app:/config
ports:
- 6875:80
restart: unless-stopped
networks:
- bookstack_net
networks:
bookstack_net:
external: true
To sum up, I now have two separate projects, each running a single container — one for MariaDB and one for BookStack.
@ssddanbrown commented on GitHub (Apr 24, 2025):
What exactly do you see when accessing via the browser?
@Fabio-91 commented on GitHub (Apr 24, 2025):
@ssddanbrown

@ssddanbrown commented on GitHub (Apr 24, 2025):
Is the firewall active on your synology box, and if so is port 6875 allowed through it?
@Fabio-91 commented on GitHub (Apr 24, 2025):
@ssddanbrown
I dont have firewall.
Does the nas need to be connected to the internet to display the web page?
@ssddanbrown commented on GitHub (Apr 24, 2025):
@Fabio-91 No, you just need to be on the same local network. Is
192.168.1.11the IP address of the NAS?@Fabio-91 commented on GitHub (Apr 24, 2025):
@ssddanbrown
Yes 192.168.1.11 is my NAS address.
@ssddanbrown commented on GitHub (Apr 24, 2025):
Okay. In that case I'm not sure thy you can't connect assuming you're on the same local network.
I'm not familiar enough with the options and behaviour of Synology docker management to know what might be the issue.
Maybe it's the network type used for the BookStack container? Does it state the network type anywhere?
Also, is the port mapping retained after container creation? If you look at the BookStack container can you see the port mapping anywhere in the UI?
@Fabio-91 commented on GitHub (Apr 25, 2025):
@ssddanbrown
It turned out the issue was related to the network configuration.
I created a custom Docker network from the command line (sudo docker network create bookstack_net), and it was assigned the subnet 172.20.0.0.
After attaching my containers to this new network, everything started working properly.
Thanks a lot for your help!
@ssddanbrown commented on GitHub (Apr 26, 2025):
Good to hear you got things working! Will therefore close this off.