What can I do as OpenShift user? - openshift

I'm currently using a virtual server and want to try OpenShift out. But I'm not really getting yet, how it works. Do I get a root access to my "webspace"? Can I set up the server OS (e.g. Debian 7)? Can I install/uninstall software (nginx, PHP 5.5, PHP Code Sniffer PEAR package etc.)? Can I use one gear for multiple websites?

It not clear by your line of questioning what portion of OpenShift you are not understanding, so I will try and lay out the architecture and provide documentation to get you started.
OpenShift is a Red Hat developed product (so its going to be easiest to get started on RHEL or Fedora), but it can also run on other Linux systems (however you may need to piece meal the components together, but it can be done).
This is talked about in building your own live cd on the community site, however has not been done for you by the OpenShift community.
There are two starting places for OpenShift, and they dependon on what you are trying to use openshift for? As a PaaS hosting solution, or PaaS hosted solution?
For a PaaS hosting solution a good starting point is to look at the Origin page as it provides VM's and install instructions, for OpenShift's Community product.
Because OpenShift is a PaaS solution these components (see Architecture Links), when cobbled together provide users with an application space (which they do not have root access to).
https://www.openshift.com/products/architecture
https://www.openshift.com/wiki/architecture-overview
As the administrator for the box you would have (root access) but your end users would not.
For a PaaS hosted solution a good starting place for OpenShift is OpenShift Online which is Red Hat's Hosted solution for the OpenShift Origin project.
Get started by Creating an Acount
With an online account you can get started using the hosted solution very quickly by trying some of the quickstarts. Be sure to read the full set of OpenShift Documentation as well as install the client tools

Related

What is the value of RedHat Openshift Application Runtimes compared with just OpenShift Container Platform?

What is the value of RedHat Openshift Application Runtimes? I'm trying to understand what is RedHat Openshift Application Runtimes (RHOAR) but I'm not able to find something that talks specifically about RHOAR assets, what I'm buying.
All I see is videos of developing demo applications that uses CI/CD features of OCP.
The idea I'm building is that RHOAR is an entitlement that gives me licenses and support for JBoss and in case I have issues with vert.x WildFly, Spring Boot or Tomcat I will be able to open an issue with RedHat. May be also access to a repository with pre-built images of these technologies?
I'm not able to find or understand what gets the customer buying RHOAR. As said I only find videos of developing sample apps, but I guess a customer would not pay just for samples/documentation.
The lines from redhat are: "A commercial offering based on open source that provides support , along with assets such as "boosters and missions"
Those boosters and missions is what I have understood are sample applications.
The concept left is "commercial offering based on open source that provides support", that is what I have supposed that is support for JBoss, vert.x, WildFly and Spring Boot and preconfigured container images. (I would say openshift build and runtime images)

Web Development, Domain and Site Hosting

I'm not 100% sure if I'm on the correct section but i'll transfer the post once I know where it's supposed to be but I am looking for advice regarding web development, setting up a domain and hosting it.
I'm currently working on a personal project using Cloud9. Which is an online development environment where I can develop and host. The reason why I chose this is because it has MySQL usability as I retrieve and store data on the project I am working on.
I am now at the point where I want to get a domain and host a site to transfer my project over to a live website with my own domain which also has SQL/MySQL usability.
Any advice or where would be the best place to look up on methods of pursuing this?
Edit: I develop using PHP and JavaScript with MySQL
To start I would suggest heroku, they have a free option and some nice guides, depending on which server side language you use . This way you can get used to hosting some apps and doing deployments, seeing logs etc.
The database doesn't have to be on the same hosting necessarily, you can use mongolab for example.
For domain names it's a different thing, you will have to use the likes of godaddy
Why not setup your own VPS (Virtual Private Server)? There are many providers..
Design the software application with portability and avoid vendor lock-in to cloud services. For file transfer, there are FTP/FXP, zip/gzip, & version control standards like Git, CVS, SVN, etc. Use phpMyAdmin for the database export & import process to change web hosts. Otherwise, build a staging subdomain or a local development environment with copies of the original web app & use those to transfer files+DB to a new host for production.

How can I automate the setup of development tools for new hires?

I am looking in a way to have some kind of "image" (VM, Vagrant box, Docker container...???) with all the development tools needed to work on our software project, like a configured IDE (i.e. Eclipse or PyCharm), build and deployment tools.
After a bit of searching I found surprising little about this topic, while plenty about development environments that mirrors the production one. Almost every source I found considers installing development tools on the host, while deploying in a virtualized environment.
The first thing that comes to my mind is a virtual machine of some sort, maybe provisioned in an automated way (Packer + Ansible maybe). I have also seen some blog posts about running GUI applications in Docker containers via X.org.
Is there a better way? How did you solve the problem?
The ultimate goal is to let new hires being productive in hours instead of days.
UPDATE: After some research, I am currently evaluating:
Development in a Virtual Machine
Development with the support of Docker containers
Cloud IDEs
Have your IT department make an image of a development laptop and then use a confluence page for tweaking the images to the needs of the individual developer. Then use docker images for setting up any servers they will need. These can be run on the laptops. You can use docker swarm to have many docker images spun up if you need it.
I prefer to have dev tools installed on the host so every one do it its own way and I don't want to convert someone to specific tool.
If you want to go the other route and give your new hires a ready to use dev box, I would go with vagrant working in GUI mode + provisioning scripts. For example the jhipster project has a nice dev box, its pretty nice as they have many tools to be installed, its pretty neat so after you install vagrant/virtualbox (or vmware)/git on your host you're ready in minutes.

how to configure shared web hosting on ubuntu server?

i am planning to open a shared web hosting company. before opening i am configuring and checking that all things are up and running or not.
i had tried webmin, virtualmin and ajenti as web hosting manager on ubuntu server but i am not satisfied with them. is there any alternative to them which have secure administrator and client side control panel and easier to manager client account and hosts.
i am using apache2 as web server and mysql as database serve.
Thank You
Try ZPanel, it is cross-platform and has a great looking control panel. They also provide an installer which installs Apache, PHP, MySQL, and ZPanel, all pre-configured to run a shared hosting service.
Link
Getting shared hosting right isn't an easy thing to do especially if you want to allow your clients to use scripting languages like PHP. By default, PHP runs under the same userid regardless of which of customer the files belong to. So they will be able to see the files (including config files with database passwords) of the other customers.
There are ways around this problem, but most of them are either inconvenient for the customer or they bring other problems (like having to run the Apache as root).
Besides the shared hosting market is quite full with existing companies which have huge data centers and therefore can offer much more service at lower costs.
So my suggestion would be: Look at new services that you can provide. Docker Hosting or LXC Hosting isn't that common yet and you can better compete there.
If you really want to do simple shared hosting, and are in search of an admin tool: Try ISPCONFIG3

Comet (Ajax Push) in Godaddy dedicated server?

I want to know if it's possible and I'm looking for tutorials to set it up.
APE website says that knowledge of JavaScript programming is sufficent to follow the tutorial however I haven't been able to puzzle even the first 2 lines of the tutorial.
I'm using Ubuntu. After downloading APE I have no idea what to do. I already set up SSH to access the server.
What should be my following steps or where can I find an easier to tutorial to use comet be it through APE or something else?
Assuming your GoDaddy server is running some flavor of Linux, I don't see any reason it would not be possible. I was just looking over the documentation and I am not clear on what part you are having trouble with. What Linux distribution are you using? Do you have SSH access?
If you have ssh access and a root account you should be able to just follow the instructions to get APE running on the default port.
If you are running a Debian dist (Ubuntu and others) it looks like you should download the source from Git and compile it. There are instructions for the compilation there. You can learn about what you need to do wth Git by search for "clone git".
If you can be more specific about what you are having trouble with, we can probably be more helpful. But ultimately you should be able to install this on any dedicated server without issue.