Depending on how you configure OctoPi, you can do the slicing on OctoPi too. However you’ll need a Raspberry Pi 3 because it is CPU intensive.
Alternatively you can use any slicer of your choice, then upload the gcode file to OctoPi. If you do use Cura, there’s a way to configure Cura to interface with the OctoPi server inside the app itself. You will need to install the OctoPi Connection plugin for Cura. I have not tried integrating other slicers with OctoPi. I normally upload the gcode files through the OctoPi web interface.