If you’re looking to add an app to just one SharePoint site, you will want to avoid the tenant SharePoint app catalog. If you add an app to the tenant level, anyone in your organization can see the app.
If you have an app that you just want deployed to one site collection, you will have to create a site collection app catalog. Creating the app catalog is fairly straight forward. First, connect to your SharePoint Online tenant using the SharePoint Online PowerShell. If you don’t have the SharePoint Online Management Shell, you can download it here: https://www.microsoft.com/en-us/download/details.aspx?id=35588.
You must also have a tenant app catalog created in your tenant before deploying a site collection app catalog. If you do not have a tenant app catalog, you can follow these steps to install it: https://docs.microsoft.com/en-us/sharepoint/use-app-catalog.
Next, you can create the app catalog in your site collection. Simply run the following command in the SharePoint Online PowerShell.
Add-SPOSiteCollectionAppCatalog -Site https://tenantname.sharepoint.com/sites/sitecollectionname
After executing this script, the Apps for SharePoint library will be added to your site collection (you can see it in your Site Contents).
This is where you access your app catalog. The app catalog acts the same as the tenant catalog. To add your package, click the New button and deploy it to your site collection.