If you're familiar with SharePoint site templates, you know you can usually create a template from your website, export the resulting file, move it to another server, import it and create a new site from it. You can also backup a site and import it, but you have to make sure that the services that are active on the source farm are also active on the destination farm.
SharePoint Online, a component of Office 365, does not allow one to take either of these approaches.
In fact, with SharePoint Online, you are on your own when it comes to migrating sites. I found this out when my team built our new company website in a preview subscription of Office 365 in order to utilize the new publishing features in SharePoint 2013. Our 'production' subscription to Office 365 had not been upgraded to SharePoint 2013 at the time, and we wanted the new site to be ready to go when the upgrade occured.
Well, we were upgraded on May 8th, and we immediately discovered that we were a little bit stranded with our website. Here's how we dealt with the situation:
STEP 1: I had been testing out a tool called ShareGate (http://en.share-gate.com/). It is a handy tool for SharePoint administrators that includes the ability to copy constructs and data from one SharePoint instance to another. It turns out, the company that offers this tool is working on a site to site copy function, but it isn't available yet. I used ShareGate to migrate most of the libraries and lists from our dev site to our production site.
STEP 2: Although we were able to move some custom content types using ShareGate, we had one that we use extensively for publishing pages (it extends the type to include some additional fields), and although it was copied over, it wasn't "registered" properly to be used. It turned out that we had to set up all of the relationships in order for our custom page layouts to be able to use this content type.
STEP 3: I then used SharePoint Designer to copy over the publishing pages. Unfortunately, I found that the cool new menu for editing SEO properties as well as the one for editing navigation properties were not available for the copied pages. I had to create new pages using the Page/New button on the toolbar in order for the pages to be created correctly. I was then able to copy over the content of the pages pretty easily.