The answer is usually "yes". The kind of table you describe is an association table, which stores associations. Because these records are interesting in their own right, and because you will probably want to look them up later, they should have a meaningful identity.
For instance, perhaps you have a players
table and a matchups
table for your tennis league. matchups
may contain nothing more than the foreign keys of the two players that played against each other; it's an association between two players.
But later you may want to record other information specific to that association: the time the match occurred, the score of the game, et cetera. And, of course, as soon as you want to have more than one matchup between the same two players, you'll need to differentiate between each matchup. Thus you'll want to give each matchup
its own identity in the form of a primary key.
Update:
========================
| galleries_images |
|----------------------|
| FK | gallery_id |
| FK | image_id | <----- Should I add a PK to this table?
========================
In your specific example, it's probably useful to have a primary key here. As soon as you need to record any metadata about the association, you'll want to have that primary key. Also, if the same image can be added to the same gallery more than once, a primary key will be necessary to differentiate between the two records.