I have the same use case and have been wondering about solutions too. I'm hosting on Netlify, and when I push to my gitlab repository, Netlify's CI fetches, builds and deploys the site. I've wondered if I can run a script somewhere that periodically checks a private Instagram account (so not my main one), and when it sees a new post, it would download the photo and caption, creates a Markdown post and pushes everything into the git repo.
You could potentially use a regularly scheduled pipeline in GitLab CI to do this. You'd need to use a user token instead of the pipeline token since you want to push back into the repository, but this should be possible. Then, when GitLab CI updates the repo, Netlify CI should jump in.