• Welcome to the Chevereto User Community!

    Here, users from all over the world come together to learn, share, and collaborate on everything related to Chevereto. It's a place to exchange ideas, ask questions, and help improve the software.

    Please keep in mind:

    • This community is user-driven. Always be polite and respectful to others.
    • Support development by purchasing a Chevereto license, which also gives you priority support.
    • Go further by joining the Community Subscription for even faster response times and to help sustain this space
  • Chevereto Support CLST

    Support response

    Support checklist

    • Got a Something went wrong message? Read this guide and provide the actual error. Do not skip this.
    • Confirm that the server meets the System Requirements
    • Check for any available Hotfix - your issue could be already reported/fixed
    • Read documentation - It will be required to Debug and understand Errors for a faster support response

Just updated my Chevereto Docker Container and I get a 403 from my site now.

Version
4.2
PHP version
Docker
Database driver
MariaDB
Database version
jammy
Web browser
Chrome

user_1fedf

Chevereto Member
I was on 4.1.x and I went to 4.2

I synced the repo, switched to 4.2, built the image, pushed to ghcr, and then on my server I pulled the new image and recreated my container.

Docker Logs:

Code:
2025-01-22T15:26:50.226954824Z Restarting Mail Transport Agent (MTA): sendmail.
2025-01-22T15:26:50.277307373Z AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 10.0.1.39. Set the 'ServerName' directive globally to suppress this message
2025-01-22T15:26:50.294555166Z AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 10.0.1.39. Set the 'ServerName' directive globally to suppress this message
2025-01-22T15:26:50.326593090Z [Wed Jan 22 15:26:50.326468 2025] [mpm_prefork:notice] [pid 1:tid 1] AH00163: Apache/2.4.62 (Debian) OpenSSL/3.0.15 configured -- resuming normal operations
2025-01-22T15:26:50.326610920Z [Wed Jan 22 15:26:50.326512 2025] [core:notice] [pid 1:tid 1] AH00094: Command line: 'apache2 -D FOREGROUND'
2025-01-22T15:27:04.644826311Z 10.0.1.23 - - [22/Jan/2025:15:27:04 +0000] "GET / HTTP/1.0" 403 474 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"
2025-01-22T15:27:04.644827171Z [Wed Jan 22 15:27:04.644361 2025] [autoindex:error] [pid 81:tid 81] [client 10.0.1.23:38822] AH01276: Cannot serve directory /var/www/html/: No matching DirectoryIndex (index.php,index.html) found, and server-generated directory index forbidden by Options directive
2025-01-22T15:29:09.254713776Z Restarting Mail Transport Agent (MTA): sendmail.
2025-01-22T15:29:09.307212786Z AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 10.0.1.40. Set the 'ServerName' directive globally to suppress this message
2025-01-22T15:29:09.324547940Z AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 10.0.1.40. Set the 'ServerName' directive globally to suppress this message
2025-01-22T15:29:09.361055978Z [Wed Jan 22 15:29:09.360803 2025] [mpm_prefork:notice] [pid 1:tid 1] AH00163: Apache/2.4.62 (Debian) OpenSSL/3.0.15 configured -- resuming normal operations
2025-01-22T15:29:09.361304898Z [Wed Jan 22 15:29:09.361169 2025] [core:notice] [pid 1:tid 1] AH00094: Command line: 'apache2 -D FOREGROUND'
2025-01-22T15:29:10.417784260Z [Wed Jan 22 15:29:10.417599 2025] [mpm_prefork:notice] [pid 1:tid 1] AH00170: caught SIGWINCH, shutting down gracefully
2025-01-22T15:30:52.147459816Z [Wed Jan 22 15:30:52.146812 2025] [autoindex:error] [pid 80:tid 80] [client 10.0.1.23:40252] AH01276: Cannot serve directory /var/www/html/: No matching DirectoryIndex (index.php,index.html) found, and server-generated directory index forbidden by Options directive
2025-01-22T15:30:52.147468976Z 10.0.1.23 - - [22/Jan/2025:15:30:52 +0000] "GET / HTTP/1.0" 403 474 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"
 
When building the image it should download Chevereto and populate the /var/www/html path. How are you building the image?


Note: You can do that only if the image access is private.

I am building the image by downloading the chevereto repository at https://github.com/chevereto/docker as a zip file (note the branch is already 4.2 by default). I then run make env I then set my license and letsencrypt email as prompted, I ignore all the cloudflare stuff. Finally, I run make image. When that is done, I use my PAT to auth to GHCR and push my image. It pushes successfully.

Deployment, I login to Caprover, I bump the image tag and click "deploy". Caprover downloads the latest image from my ghcr (the one I just built and pushed above) and recreates the container. I do not want to derail us about Caprover, the essence here is that I am more or less "manually" updating my container VS using the make commands.

Inside the /var/www/html there is no app/bin/legacy for me to run the update. And is this even my problem? What am I missing?


Code:
root@6b375a1bfe57:/var/www/html# ls -lah
total 16K
drwxrwxrwt 1 www-data www-data 4.0K Jan 22 14:19 .
drwxr-xr-x 1 root     root     4.0K Jan 14 02:29 ..
drwxr-xr-x 1 www-data www-data 4.0K Jan 22 14:23 images
drwxr-xr-x 1 www-data www-data 4.0K Jan 22 14:23 importing
root@6b375a1bfe57:/var/www/html#
 
You test the image contents like this: docker run -it --entrypoint sh image_name

Code:
docker run -it --entrypoint sh docker.io/library/chevereto:4.2.4

And on the shell you type ls:

Code:
# ls
LICENSE  app  content  images  importing  index.php  sdk

The issue could be a mount on the app filesystem. If the image doesn't have the app files it means that build failed to provision the files, either because of download/extract issues.
 
I was just impatient. Turns out the UNZIP command was hanging during the make image command for some reason... after waiting 20 minutes!!! the unzip completed, I re-did all above steps and I now have directories where they should be.
 
I'm glad I went through the VPS/non-docker method, using serveroptima/Linux VMs as a replacement to traditional hosting, and after reading what you went through.. @user_1fedf 😅 you are definitely a braver man than I, hopefully things work out for you soon ❤️
 
I'm glad I went through the VPS/non-docker method, using serveroptima/Linux VMs as a replacement to traditional hosting, and after reading what you went through.. @user_1fedf 😅 you are definitely a braver man than I, hopefully things work out for you soon ❤️
It's all good now. Docker method is plenty easy I just don't understand why the unzip in wsl (triggered by make image sh script) takes SO long. After that I was able to spin up the container, get into it's console and run the data ase migrations via the CLI tool.
 
@user_1fedf

There's a hack you can use, place the Chevereto filesystem into ./chevereto (from the docker project, create if missing) then run this:

Code:
make image-custom

This is exactly the same as make image but that one sources from ./chevereto instead of downloading/unzipping.
 
Back
Top