BookStack icon indicating copy to clipboard operation
BookStack copied to clipboard

An error occurred uploading the image

Open bobinator83 opened this issue 1 year ago • 3 comments

Describe the Bug

Sometimes, not every time I get the error message "An error occurred uploading the image" during copy and paste an Image via clipboard. After I have restarted the Application Container, it works fine for a while.

In the meantime, I have found out that it only happend when the "screenshot width" is bigger than the "content width" of the bookstack application. So I guess it happend when bookstack needs to resize (shrink) the picture width/height.

Steps to Reproduce

  1. Edit an article
  2. take a screenshot with a width bigger than the content with of the bookstack main frame
  3. copy and paste the screenshot

Expected Behaviour

Successfully uploaded screenshot/picture.

Screenshots or Additional Context

2024-08-20 14_45_22-Editing Page HMC, BMC, eBMC, VMI, F  _ BobStack

Browser Details

Chrome 127.0.6533.89

Exact BookStack Version

v24.05.1

bobinator83 avatar Aug 20 '24 12:08 bobinator83

Hi @bobinator83,

Please follow our debugging guidance to gain information from your log file which may provide more clues as to what the underlying cause is:

https://www.bookstackapp.com/docs/admin/debugging/#error-log-file

ssddanbrown avatar Aug 26 '24 12:08 ssddanbrown

Hi @ssddanbrown,

Thanks for your support and the hint for providing log files. Here is what I found in the log files when the error occured.

`nginx - error.log.1 2024/08/20 11:58:29 [crit] 314#314: *804 open() "/var/lib/nginx/tmp/client_body/0000000019" failed (13: Permission denied), client: 172.19.0.1, server: _, request: "POST /images/gallery HTTP/1.1", host: "domain.de", referrer: "https://domain.de/books/book1/page/page1/edit" 2024/08/20 11:58:52 [crit] 314#314: *806 open() "/var/lib/nginx/tmp/client_body/0000000020" failed (13: Permission denied), client: 172.19.0.1, server: _, request: "PUT /ajax/page/372/save-draft HTTP/1.1", host: "domain.de", referrer: "https://domain.de/books/book1/page/page1/edit" 2024/08/20 12:43:41 [crit] 314#314: *815 open() "/var/lib/nginx/tmp/client_body/0000000021" failed (13: Permission denied), client: 172.19.0.1, server: _, request: "POST /books/book1/page/page1 HTTP/1.1", host: "domain.de", referrer: "https://domain.de/books/book1/page/page1/edit" 2024/08/20 12:44:01 [crit] 312#312: *826 open() "/var/lib/nginx/tmp/client_body/0000000022" failed (13: Permission denied), client: 172.19.0.1, server: _, request: "POST /books/book1/page/page1 HTTP/1.1", host: "domain.de", referrer: "https://domain.de/books/book1/page/page1/edit" 2024/08/20 12:45:09 [crit] 312#312: *836 open() "/var/lib/nginx/tmp/client_body/0000000023" failed (13: Permission denied), client: 172.19.0.1, server: _, request: "POST /images/gallery HTTP/1.1", host: "domain.de", referrer: "https://domain.de/books/book1/page/page1/edit" 2024/08/20 12:45:22 [crit] 312#312: *837 open() "/var/lib/nginx/tmp/client_body/0000000024" failed (13: Permission denied), client: 172.19.0.1, server: _, request: "POST /images/gallery HTTP/1.1", host: "domain.de", referrer: "https://domain.de/books/book1/page/page1/edit" 2024/08/20 12:45:34 [crit] 313#313: *838 open() "/var/lib/nginx/tmp/client_body/0000000025" failed (13: Permission denied), client: 172.19.0.1, server: _, request: "PUT /ajax/page/372/save-draft HTTP/1.1", host: "domain.de", referrer: "https://domain.de/books/book1/page/page1/edit" 2024/08/20 12:46:30 [crit] 312#312: *847 open() "/var/lib/nginx/tmp/client_body/0000000026" failed (13: Permission denied), client: 172.19.0.1, server: _, request: "POST /images/gallery HTTP/1.1", host: "domain.de", referrer: "https://domain.de/books/book1/page/page1/edit"

php - error.log.1 [20-Aug-2024 12:52:42] NOTICE: Terminating ... [20-Aug-2024 12:52:42] NOTICE: exiting, bye-bye! [20-Aug-2024 12:52:53] NOTICE: fpm is running, pid 266 [20-Aug-2024 12:52:53] NOTICE: ready to handle connections`

It seems there where some permission errors. But I do not understand why. After a reboot of the BookstackApp Container everything works fine. And it seems it occured when the width of the screenshot is too wide.

Just right now, I was able to reproduce the issue and I used the chance to test it with the edge brower as well. Unfortunately I have the same issue.

Do you have an idea?

bobinator83 avatar Aug 26 '24 20:08 bobinator83

@bobinator83 That seems like an internal permissions error for nginx. What container are you using and how do you have it configured? What volumes and env options do you have set?

ssddanbrown avatar Aug 27 '24 10:08 ssddanbrown

Hi @ssddanbrown I have installed bookstack container with portainer:

Here is my config:

version: "2" services: bookstack_prod: image: lscr.io/linuxserver/bookstack container_name: bookstack_prod_app environment: - PUID=1026 - PGID=100 - APP_URL=https://domain.de - APP_KEY=base64:SPlSs5In2wrFmFAsdfasfadfadsf1hhM+hikB/M0= - DB_HOST=bookstack_prod_db - DB_PORT=3306 - DB_USER=user - DB_PASS=password - DB_DATABASE=bookstackapp volumes: - /volume1/docker/bookstack_prod/app:/config ports: - 6875:80 restart: unless-stopped depends_on: - bookstack_prod_db bookstack_prod_db: image: lscr.io/linuxserver/mariadb container_name: bookstack_prod_db environment: - PUID=1026 - PGID=100 - MYSQL_ROOT_PASSWORD=password - TZ=Europe/Berlin - MYSQL_DATABASE=bookstackapp - MYSQL_USER=bookstack - MYSQL_PASSWORD=password volumes: - /volume1/docker/bookstack_prod/db:/config restart: unless-stopped

Do you need some more information?

Best regards, Christoph

bobinator83 avatar Sep 04 '24 09:09 bobinator83

Additional hint. Now when I'm editing a page and save it, I get the following error page:

500 Internal Server Error nginx

After rebooting the container, everything works find. But this happened to time today :-(

bobinator83 avatar Sep 04 '24 12:09 bobinator83

Hi @ssddanbrown,

do you have any additional hint for me? Would a possible solution be to back up Bookstack, reinstall and restore the backup?

bobinator83 avatar Sep 24 '24 07:09 bobinator83

@bobinator83 I'm not really sure since this seems to be an infrastructure thing IMO (so related to the host and how docker container files interact with the host system).

I'm not too familiar with portainer, are there any "read-only" flags/settings active on this container or docker image? Also, what base OS are you using on the host for Portainer?

Potentially related to https://github.com/linuxserver/docker-letsencrypt/issues/67.

ssddanbrown avatar Sep 24 '24 10:09 ssddanbrown

Since there's been no further follow up I'll go ahead and close this off.

ssddanbrown avatar Oct 14 '24 14:10 ssddanbrown