Use `visualize` function

<!-- language: lang-js -->

 var landcover_roi = composite.clip(ft);
 var ndvi =landcover_roi.normalizedDifference(['B8', 'B4']);
 
 // Make a palette: a list of hex strings.
 var palette = ['FFFFFF', 'CE7E45', 'DF923D', 'F1B555', 'FCD163', '99B718',
 '74A901', '66A000', '529400', '3E8601', '207401', '056201',
 '004C00', '023B01', '012E01', '011D01', '011301'];
 
 // make a visualizing variable
 var vis = {min: 0, max: 1, palette: palette, bands:['nd']};

 // create a new image that will have 'vis-red', 'vis-green' and 'vis-blue' bands and add original value of ndvi
 var toexport = ndvi.visualize(vis).addBands(ndvi)

 Map.addLayer(ndvi, vis,'Sentinel-2 NDVI')
 Export.image.toDrive({
 image:toexport,
 description: 'ndvi',
 scale: 30,
 maxPixels:1e13
 });