Yes, you can manage Drupal core with composer. There are a couple of things to be aware of though.
You will probably get timeouts due to a number of items composer has to run through, especially if you run in a local VM. If you run composer install
you will likely get the composer error:
[RuntimeException]
Could not delete core/.nfs0000000001c633d500000001nfs0000000000000000000001:
Make sure you use require
{
"require": {
"drupal/core": "8.3.*"
Also add an extension to the timeout in the config
"installer-paths": {
"core": ["type:drupal-core"],
"modules/contrib/{$name}": ["type:drupal-module"],
"profiles/contrib/{$name}": ["type:drupal-profile"],
"themes/contrib/{$name}": ["type:drupal-theme"],
"drush/contrib/{$name}": ["type:drupal-drush"],
"modules/custom/{$name}": ["type:drupal-custom-module"],
"themes/custom/{$name}": ["type:drupal-custom-theme"]
}
},
"config":{
"process-timeout": 1600
},
Also if that does not work you can run composer install from outside SSH in your VM.
This will bypass any NFS share time outstimeouts and upackunpack Drupal in the right place.