That was a pain for years. One of the options now is to use WP ACF-VC Bridge plugin (http://wpacfvcbridge.com/). Here are the steps you need to take:
1) Create your page template as VC Snippet (here is a video overview http://wpacfvcbridge.com/vc-snippets/)
2) Set your static content with Visual Composer. You can also dynamically include data from your posts by using ACF Field Picker (here is an overview http://wpacfvcbridge.com/acf-field-picker/).
Note 1: Field context must be custom.
Note 2: these fields must be created with Advanced Custom Fields plugin (https://www.advancedcustomfields.com/pro/) which is included in WP ACF-VC Bridge. This is enough to cover 99% cases. If you'll need to include other post fields list post title or custom meta field, then you need to look for suitable Visual Composer add-on or write this custom shortcode.
3) Add VC Snippet to your post content with
[vc-vc-snippet id="{VC Snippet Template Post ID}"]
If you have Visual Composer enabled for your post type (or you can enable it under Visual Composer -> Role Manager) you can use ready VC shortcode to embed VC Snippet.
Now if you'll change your VC Snippet, the changes will be immediately reflected across all posts.