Both will not display in preview or on display when published. I see in the logs the error of:
Unable to get feed:
cURL error 60: SSL certificate problem: unable to get local issuer certificate (see http://curl.haxx.se/libcurl/c/libcurl-errors.html)
The Docker setup will have the correct SSL root certificate bundle installed already so that isn’t the issue you have.
I suspect your organisation uses a filtering proxy which is issuing its own certificates. If so, you’ll need to get a copy of the root CA that those certificates are signed with and install that in to the containers so that PHP trusts your filtering appliance.
Your IT team or proxy vendor will be able to provide you the CA certificate.
Once you have it (in pem/crt format), then do the following:
Make a directory shared/cms/ca-certs
Put your certificate file in there - eg shared/cms/mycertificate.pem
Edit your docker-compose.yml file, and in the cms-web section, add a line to map that folder so it looks like this:
Thank you so much for the response and assistance!
I created the folder c:\Xibo\shared\cms\ca-certs and placed out CA root cert inside. The one I received was a *.cer. I renamed to *.pem. *Not sure if necessary or not.
I then edited the docker-compose.yml file and added the line exactly as shown in your example.
I shutdown all containers and then brought them back up. I even went a step further and performed a reboot of the machine. *i know not necessary.
After logging back in and docker for desktop came up, I ran my command in PS to bring up the containers for Xibo in docker: docker-compose up -d
All came up with this one WARNING message:
PS C:\xibo> docker-compose up -d
Starting xibo_cms-db_1 … done
Starting xibo_cms-xmr_1 … done Recreating xibo_cms-web_1 … WARNING: Service “cms-web” is using volume “/var/www/cms/ca-certs” from the previous container. Host mapping “C:\xibo\shared\cms\ca-certs” has no effect. Remove the existing containers (with docker-compose rm cms-web) to use the host voluRecreating xibo_cms-web_1 … done
PS C:\xibo>
I was able to log into Xibo via web browser just fine. I went to test the weather widget and still comes up blank in preview and nothing occurs when clicking on “get forecast” I turned debug back on and tested again and found same error as prior:
“Unable to reach Forecast API: cURL error 60: SSL certificate problem: unable to get local issuer certificate (see libcurl - Error Codes)”
Not sure what I may have done wrong. Any insight is greatly appreciated.
Ah-ha! That is correct, I stopped and restarted along with rebooting the host computer.
docker-compose down: This will not remove my installation and files correct? I only see he down command referenced when wanting to remove/uninstall. Sorry for the perceived ignorant comment, just making sure. I do have a backup of the entire Xibo folder/install.
Assuming you’ve not made manual changes inside the containers, then down is completely safe. All your user data/library/database live in the shared folder which won’t be touched.
Again, I manually created the folder via Windows Explorer that you advised in the first response. I went ahead and placed our cert in the folder. It was a .CER file, which I renamed to .PEM. Would that be of any issue?
I edited the docker compose yml file to look identical as you provided.
Seem to be missing something or not performing something correctly as the issue still exists.
Again, any direction is greatly appreciated. Thank you for your time!
Please try with the certificate name as a single lower case word. So for example myca.pem
Then down/up the containers. Beyond that, I’m not sure why it won’t work. It could be that that isn’t the correct certificate file. Whoever is in charge of your filtering appliance will probably be able to assist you.
My apologies for just now responding. I unfortunately could not get this to work for me. I confirmed the encryption is PEM and the file is correct. I also renamed the file to one word, all lowercase, and it still would not work (same errors as prior).
For a work around we just set an exception in our filtering system and all is now functioning.
I may come back to this at some point simply to get it figured out and report back. For now, all is working with the exception added to our filtering system.
Thank you for all your assistance and fast responses.