
Show HN: Portal - Run apps on your own easy to use cloud server - staunch
https://portalplatform.net/
======
sida
Sandstorm and portals are awesome. If you add integration with something like
OpenStack and deploy the system behind corporate firewalls. I bet it would
reduce the hurdles to enterprise sales. (If corporate teams can just one click
install new services because they are are hosted internally)

~~~
staunch
Thank you! Portal already supports booting VMs by emulating OpenStack's
metadata service, that's how we're supporting CloudInit with Ubuntu and
CentOS.

Businesses are an easy sell, but we want regular people on the internet to run
their own stuff too :-)

------
nharada
Very cool! A few questions:

1\. Is the hardware infrastructure in house or built on another cloud
provider? I ask because you offer several server locations. Am I afforded the
same up-times I'd find with AWS or Azure?

2\. How do you deal with having multiple apps on the same port? Could
Wordpress and another web server exist at the same time? Can I SSH to multiple
machines?

3\. Do you have stronger specs on compute power? "Standard" doesn't really
mean much to me.

4\. Great domain name.

~~~
staunch
1\. We're using all of our own hardware, co-located in good datacenters with
high quality internet providers. I've been building and deploying servers
around the world for over a decade, so I have some strong opinions on this. We
may also use rented dedicated servers in similar facilities during the public
beta, but that's temporary. Uptimes will be comparable.

2\. You can forward different external ports to the same internal ports on
apps (e.g. port 31245 -> port 22 on your Ubuntu app). You can also launch VPN
server and then ssh to your servers from inside your virtual LAN :-)

Web traffic is handled by the Portal system, so port 80 and 443 are
"intercepted" by default. They proxy HTTP traffic to your apps based on the
paths that you specify. You can forward /blog to one WordPress instance and
/otherblog to another WordPress instance.

3\. The compute power levels are meant to be relative to standard usage, but
benchmarks are probably better for hackers, so we'll do that.

4\. Thank you!

Great feedback, thank you!

~~~
sudent
For (2) can we add different domains to be used? It seems to be like it (from
the screenshot, there's a select box for the domains) though I'm not sure.
Thanks

~~~
staunch
Yes, you can have multiple domains per account and map paths on them to
different apps. Thanks for the questions!

------
fmitchell0
This is awesome! I just signed up. A couple of questions:

\- If I want add my own app, will there be docs/examples on how to do that?
I'd love to have my own app to deploy something like Jenkins.

\- What are the backup options? If I want to grab a snapshot locally (just
b/c), is that possible?

~~~
staunch
Thank you very much!

1\. There will be (basic) developer docs very soon. We'll make sure to send a
link to everyone who has signed up.

2\. Yes, you can download snapshots of your data at any time. You can't upload
them yet, but that's coming.

------
jaequery
Looks cool but anyone know what the hardware specs (CPU/RAID/SSD model/etc...)
are?

~~~
staunch
Thanks! Performance should be on par with high quality VPS providers like EC2
using SSD instances. We're using all modern Intel CPUs and Samsung SSDs with
Linux software RAID, currently.

~~~
jaequery
What's the CPU to be exact? If it's something like an sandy/ivy-bridge I was
thinking of giving you guys a try. We are not too happy with EC2's specs and
looking for something faster.

~~~
staunch
Yes and it should be faster, but I don't want to promise anything until we see
what real world usage and performance is like during the beta. Thanks for the
feedback, again.

------
amirmc
This looks great and I'm always please to see products that make it easier for
people run their own infrastructure without having to become sysadmins [1]. I
especially like the demo video that describes how apps can be added.

However, one of the things I care about is the ability to self-host if I want
to (even though I'm personally unlikely to). I can do this with Sandstorm but
doesn't look like I can with Portal. Are there plans to make this possible?

[1] I work on a project with similar aims but takes a clean-slate approach,
based on unikernels - [http://amirchaudhry.com/brewing-miso-to-serve-
nymote/](http://amirchaudhry.com/brewing-miso-to-serve-nymote/)

~~~
staunch
We want people to use Portal because it's the best way to run their stuff, not
because of any kind of lock in. Making it easy to move away from Portal will
be a core feature. If there aren't good alternatives, we may make it possible
to download and run the Portal system on your own machine. Making it easy to
export data might be easy enough.

Ultimately though, there's no way to have a server in the cloud without
relying on _someone_ , so we're trying to build the ideal service for people
who want privacy, performance, security, and freedom.

We hope other people will build similar services, so users have choice, and we
will cooperate with anyone who has an open platform.

------
eberfreitas
I would love to see an open source architecture with a common underling
storage and social capabilities on which we could build apps and interface
with others in some kind of decentralized network.

Maybe something like app.net but without a central server with multiple apps.
I could install it on my server, dump my photos in there, share with other
people, be able to manipulate those images with another app for filters or
something. Does that makes any sense? Is there anything like it already?

Sandstorm and portal are cool projects but every app that you install uses
it's own infrastructure, it's own database, it's own architecture, and that
makes interoperability hard.

~~~
amirmc
It's possible but I don't know of anything open source that exists yet. The
stack I'm working on deals with the underlying issues you describe, including
storage and identity/connectivity (which is the basis of the social network
aspect you mention) [1]. I commented a few days ago on how such a system might
work for the example of photos [2].

[1] [http://nymote.org/](http://nymote.org/) (which uses MirageOS unikernels
[http://mirage.io](http://mirage.io))

[2]
[https://news.ycombinator.com/item?id=9026778](https://news.ycombinator.com/item?id=9026778)

------
markbernard
One question: Your basic package says 1GB of RAM. Is that 1GB available to me
or is the OS using some of that to. The reason I am asking is I have been
considering something like this to run a Minecraft server for my kids and
their friends. Ever since I changed providers their port forwarding is broken
and I can't serve it from home. However to run efficiently a Minecraft server
needs 1GB to itself so if the OS is using some of that RAM getting the basic
service is out and so are the other options since they are not affordable for
me.

~~~
staunch
If it doesn't work on a 1GB VPS, it probably won't work on the Standard plan.
But it might, if you can allocate a bit less RAM for Minecraft's java process
and/or use some swap.

I'm adding this to the list of things to test during the public beta, because
we do want people to be able to run Minecraft on the Standard server. Java is
just such a memory hog!

------
fiatjaf
What's the difference between this and Sandstorm?

~~~
staunch
It's an alternative to Sandstorm. We've made some different choices, like
using full KVM VMs instead of Linux containers for apps. Portal also doesn't
require that apps know much about Portal itself to be run as apps. They can
use their own authentication or the single sign on system.

An unmodified Ubuntu cloud image is a valid (though basic) Portal app and can
boot using CloudInit. Real world apps store data on the separate "user data"
drive that is attached to all app VMs, which makes them upgradeable. And they
almost always have a web interface for the user to interact with.

They can also use the Portal metadata service to interact with the system. But
for the most part apps just receive raw TCP/IP traffic or proxied HTTP traffic
and work normally.

We began working on Portal before Sandstorm was public, but I can tell you
this is the first time I've been happy to see other people working on the same
idea as myself. Decentralizing the internet is more of a mission than a
competition.

Also, we expect to be able to run Sandstorm as a Portal app, so you could run
many Sandstorm apps inside one VM, assuming they're okay with that.

~~~
rdrey
What I like about the VM-centric design you've adopted is that 'apps' are
long-running by default. Sandstorm in its current form is not great for
hosting internet-facing sites.

~~~
kentonv
Sandstorm tries to encourage web publishing apps to work in a way that
significantly reduces resource usage and improves security. The platform will
let an app publish a static web site which does not require starting up the
app to serve. The platform also lets an app expose an API which starts up the
app on-demand. So the app can publish a bunch of static content which includes
Javascript that invokes the API when needed (e.g. when a comment is posted),
which then wakes up the app to update the static content.

But, yeah, for a fully-dynamic web site served to a large number of users,
Sandstorm currently isn't well-suited. It'll get there eventually, but given
that other platforms (like Portal) already cover this use case pretty well, we
wanted to focus on the interesting things we can do with fine-grained
containers.

------
dETAIL
First of all I think this is awesome! But my question is, the system looks
ready...If I pay now, why do I have to wait till April?

~~~
staunch
There's a bit more to do before it's ready. Your card won't be charged until
you start the beta, so signing up just reserves your spot as a founding user.
Thanks!

~~~
dETAIL
Signed up!

------
zhte415
I'm very interested in managed email. But what happens when something goes
wrong - for example the database that manages email crashing? Is this
supported as a service?

~~~
staunch
Yes, we'll help in almost any case like that. In many cases app developers
should be able to help as well. We may not be able to fix a buggy email app,
but the author could upload a fixed version and have you upgrade, for example.

------
benwerd
This is awesome: exactly the kind of simplicity the personal server market
needs. I dropped you an email; really interested in making Known work with the
platform.

~~~
staunch
Awesome, thank you. I'll reply to your email, but the answer is definitely
yes!

I've created a number of SaaS services over the years and the pain of building
a scaleable service shouldn't have to be repeated by every single app
developer. It's a huge distraction from building a great app.

It shouldn't take much work to get Known running as a one-click auto-upgrading
app, but I look forward to your feedback on the process. Thanks!

------
NhanH
I'm trying to figure out from the site, but there seems to be no info on that.
Is it possible for me to host my own Portal (similar to Sandstorm)?

~~~
staunch
Not yet, because we don't think regular people can do that. And it's still a
huge pain for technical people.

But it is very possible that we'll release a version of Portal that you can
run yourself.

Do you want it as a backup plan? Or because you already have your own server
hardware?

~~~
NhanH
I'm already running my own server hardware for personal stuffs, so I'm just
hesitant to have another one (the proposition is very appealing, but I'm too
lazy to maintain both at once).

------
owly
Domain registration and ssl cert are included? How are sites/services backed
up? Is it easy to download all apps and data locally for backup?

~~~
staunch
1\. Portal does support domain registration and SSL certificate creation. You
pay for those annually, separate from the cost of your server.

2\. Apps and data are backed up, encrypted, and stored off-site.

3\. Your data is always easy to download. Open source apps are always easy to
download. If you choose to use proprietary apps, you may only be able to run
those on other supported services. But importing your data from a proprietary
app to a non-propritary app should always be possible.

Thanks for the questions!

------
askedrelic
I'm interested for managed email. Signed up!

~~~
leesalminen
Same here.

------
itistoday2
Your website says:

> _Portal is designed to help create a world in which users are not locked in
> by proprietary technology. Portal users should be able to switch to
> alternative hosting companies and back again, with little effort._

Could you elaborate on that a bit? Because from the website I get the sense
that your Portal software itself is proprietary, not open source, but I could
be mistaken.

~~~
staunch
We may end up releasing standalone version of Portal as open source that lets
technical users run everything themselves. But that doesn't help regular
people and it doesn't solve the problem of renting a server from a trustworthy
host.

The biggest issue is lock in, not proprietary vs open source. It's okay that
Facebook is proprietary, but we don't think it's right that you can't switch
from Facebook to a new social network, without losing most of your data. They
create intentionally broken data exporting systems to keep people locked in.
They can only do this because they hold all of the data we've given them.

With Portal users control all of the data themselves, so they can give it to
any new app they want to use. And they can even export their entire Portal
environment and take it to another provider entirely.

Thanks for the feedback!

