There is no direct way to move your data from on-premise to online. You can move your customizations by creating and exporting a solution file, but not the data itself.
Depending on how much data you have to move, you have a couple of options.
1. Export it to Excel and then re-import it to online using data import. This would only work well if you have a small amount of data (50K or less total records).
2. Build some SSIS packages and use
Kingswaysoft to move the data. They have a free developers edition that will work by manually executing the jobs in VS, but if you need it the license is not super expensive ($1500 USD). I have used this tool a lot and highly recommend it.
3. Using a migration tool like Scribe. I don't have any personal experience with Scribe, but have heard good things about it. I have also heard that it is pricey, but again I don't have any personal experience with it.
4. Build a custom migration tool with the SDK. There are lots of code examples on how to connect to CRM and read data, then build another connection to online and write data. This option will probably take the most time depending on the complexity
of your data and your knowledge of .NET coding.
Good luck!