Google Image search has an option under Tools (seems like you need to search first to get it to show up), then you can pick one of unfiltered, "Creative Commons licenses", or "Commercial & other licenses".
There are a number of different CC-licenses which impose different restrictions on how a work can be used so filtering by just "Creative Commons licenses" is not very helpful. Openverse[1] provides filtering by specific CC licenses, and also for finding public domain images specifically. Disclosure: I am a maintainer for Openverse.
Public domain gets assigned automatically when some time has passed or by the author releasing it into the public domain under the cc zero license. Unsplash started like that. There are potential issues like uncertainty about signed model release documents when people are the main part of the picture plus trademarks prominently appearing.
it’s complicated
Just realized I did not really answer the question.