1. Container is added against your AAM account from back end.
2. The main purpose of the container is to sync ids with that other destination. Sync AAM Device ID with Ad Exchange/DSP ID for that user or device.
3. Here the ID sync is with AAM and that Ad Exchange/DSP. It is not necessary that you implement ID sync to sync your customer ID and AAM Device ID. If you implement ID sync then that is good, if you don't implement, then that is still OK, because your question is in context with container, which is responsible for syncing AAM device ID and Ad Exchange/DSP ID.
Example : A user visits your site/app and logs in using their username, you identify that username as PQR and you will call that Customer ID/CRM ID. Since AAM is implemented on your site, then AAM will also assign a device ID to that visitor it would be AAM UUID or MID, say AAM assigns 123.
Now say you have added an s2s destination for an Ad Server, that ad server identifies that user as ABC. Id sync that you implemented will stitch PQR with 123. Added container for that Ad Server by AAM clientcare, will stitch 123 with ABC.
1. AAM container is not a code that you need to place on your site/app unlike DIL. Container is added by AAM client care or your AAM consultant when you request to add a server to server destination. You will also see ID sync calls on your site for that DSP/Ad Exchange after a container gets added in your AAM account.
2. If you have added multiple s2s destinations, then you will see a ID sync for all those. By default you should be able to see an ID sync call for AMO
3. The purpose of adding a container and these calls is to ID sync. For example AAM identifies a user with ID 1234 and an Ad Platform say Google identifies same user with ID ABCD, then there is a need to sync both of these IDs on the first hit.