Hi Lloyd,
Don't fret! I think we can address this.
Every machine on a network has a private IP address called a 'loopback address' with the name 'LOCALHOST' that resolves to IP 127.0.0.1. This is why your services are visible on your server - you're telling the browser to look at LOCALHOST for the service resource. Now, because you don't have ArcGIS Server running on every machine on your network, nobody can see your service. Think about it like this:
Assume you have a gold bar in your pocket. You send out an email to your office telling them 'you have a gold bar in your pocket'. Everyone gets excited and checks their pockets, but they don't have any gold. Instead, you send out a new email saying 'Lloyd Bronn has a gold bar in his pocket'. Now everyone flocks to you to marvel at your fortune.
In this case, we need to do the same thing with how you've referenced your service in ArcGIS.com - we need to tell it to not look at 'LOCALHOST', but instead to your GIS Server name - which I'm betting folks on your network can 'see'.
To to this, you can right click on 'My Computer' on the server and go to properties, and get the full computer name.
For instance, on my server the full computer name is 'randallsserver.esri.com'. (that's not the real host, I've obfuscated that in the screen cap below).
So, instead of adding the service to ArcGIS.com as http://localhost:6080/arcgis/rest/services/myservice/mapserver, you'd add the service as http://yourmachinename.yourdomain.com/arcgis/rest/services/myservice/mapserver. That should fix it. Essentially, instead of telling everyone to look on their own machines for the service, you're now telling them to look at your server for the service.
You don't have to have an externally accessible .com domain - mine's not.
Hope that helps!!