Back in a days, when I’ve been wanted to develop and host some web application I used one PaaS called Openshift. They were offering free tier platform with 3 limited instances but it was OK for my purposes. But one day they decided to shut down this platform and move users to new one – not so free, way too complex (for simple applications) and enterprisey. Then I didn’t tried Heroku for somewhat reason but instead moved to VPS so this problem became slightly irrelevant. But eventually I’ve found that there is a PaaS with free tier and https (openshift hasn’t had this) and decided to use it for some projects.
First of all, install CLI utility from this page. For Windows version, earlier than 10, it’s possible (probably) to use generic CloudFoundry utility
--- applications: - name: myappname random-route: true instances: 1 memory: 64M
What does this all means?
It’s not placeholder, it’s required marker in manifest.yml
(Obviously) name of your application, must be unique among your apps. If you haven’t created app with such name in web interface, it’ll be created automatically on push and also it’ll be used as prefix of application hostname (see also random-route)
Honestly, I haven’t used it with false, but I’m sure it defines if app will use hostname like
Also I haven’t used this, but I think it specifies application instances
This parameter obviously specifies maximal amount of memory used. Lite plan has restirction - 256M for all instances.
web: python app.py
This describes how will your app be started.
Probably related docs
This specifies version of runtime. Utility will warn if you are using obsolete or absent runtime.
Well, it’s just generic pip requirements. You can produce it with
pip freeze > requirements.txt or write by hand.
You should use port passed in
PORT environment variable (generally, it’s 8080). There will be a test connection to this port during deploy, if connection will fail or time out deployment fails.
ibmcloud cf push in location where all this files and code located