Mariusz Dudek 4R hi,
for ur on-prem setup, if u're just connecting to sharepoint via graph api, u don't technically need a sharepoint online license (that "SOP" thing u mentioned) JUST for the app itself. BUT here's the catch - the user/service account u use to authenticate MUST have proper sharepoint access. microsoft's docs say it clear microsoft graph permissions reference. if u got that "no SOP license" error, it's likely ur auth token's tied to an account without sharepoint rights. try using an account that FOR SURE has access, or set up app-only auth with correct api permissions.
about external access, yes there are limits! graph api has throttling and usage limits. if u're doing heavy queries, u might hit 'em. check the deets here microsoft graph throttling guidance. and if u're accessing sharepoint data from outside azure, u gotta make sure ur app registration in azure ad has the right api permissions (like files.read.all or sites.read.all, depending what u need).
now for the fun part - future azure migration! :) for containers, u got options, azure container instances if u wanna go simple, or azure kubernetes service if u need hardcore scaling. pricing's different for each - compare azure containers pricing. sql database? yeah that's gonna need at least a basic tier, costs depend on how much data u push. pro tip: start with serverless option if u're not sure about usage patterns, it scales automatically and u pay per query.
licensing-wise, the big one is azure subscription itself. pay-as-u-go works fine for starters, but if u know u'll use lots of resources, reserved instances can save u money. and don't forget azure active directory, so u might need premium p1 if u want cool features like conditional access.
microsoft actually made this kinda clear for once their azure licensing FAQ has most answers. but honestly? their sales reps can give u better quotes if u reach out.
one last thing when u do migrate, check azure hybrid benefit. if u already have windows server licenses on-prem, u might save some cash bringing 'em to azure. clever, right? )
hope this helps untangle the mess
Best regards,
Alex
and "yes" if you would follow me at Q&A - personaly thx.
P.S. If my answer help to you, please Accept my answer
PPS That is my Answer and not a Comment