wp_insert_posts keeps adding multiple pages

You can check whether the page exists or not, and create it only if it doesn’t already exist. get_page_by_title() can help you in this case:

// Check if the page already exists
if( ! get_page_by_title('My page Reql') ) {
    // The page doesn't exist, so let's create it
}

Also, you might want to investigate how are you calling the function. You might be calling it twice, that might be the reason it’s creating a copy of each post.