Every time I upload a plugin via zip (and I’ve tried many) I get this error:
PCLZIP_ERR_BAD_FORMAT (-10): Unable to find End of Central Dir Record signature
Same .zip file uploaded manually to the wp-admin side of things works fine so I don’t think it’s the .zip file.
Now I am running my MainWP locally on my own server here in a wordpress docker container so it’s entirely possible that has something to do with it.
Can someone walk me through what’s happening behind the curtain here? Where does that .zip get uploaded to on the mainwp server? What path? Where does it get extracted to? It’s probably a disk space or disk path issue being in a docker container but I don’t know what paths are in use.
If you upload a zip file, it’s stored on your MainWP Dashboard site (your local docker instance). Then a request is sent to the child site(s) to download that zip file. But probably your local instance can’t be reached via the internet, so the link doesn’t contain a valid zip file, resulting in an error.
As far as I know you need to use an online dashboard to use functionality like this.
I’m pretty sure I set up my local instance to be internet accessible. Do you know the path where the zip file is stored and, if revelant, where it’s unzipped?
The description @josklever gave is correct.
After the ZIP is uploaded, it is stored on the Dashboard site, in your case locally, in the /wp-content/uploads/mainwp/0/bulk directory.
Once the “Complete Installation” button is pressed, the selected child sites will attempt to fetch the ZIP file from that directory. Afterward, the ZIP file will be unpacked and installed on the child site.
I don’t know enough about Docker and how you make it publically accessible, but you probably want to try this full URL test using a different computer (or a phone) and a network connection other than the one shared with your Docker container.