Skip to main content

Deploy Ruby Apps

How to deploy PythonRuby apps on eenos ?

This document will help you to deploy a pythonruby app on your eenos hosting control panel.  Eenos control panel is a modern hosting control panel designed for modern apps. 

Features Of Eenos PythonRuby App Management

Eenso control panel have the following wonderful features for easily managing pythonruby apps

  • Manage unlimited pythonRuby app domains or subdomains
  • PythonRuby Version Selector 
  • Deploy DjangoRuby on Rails  with one click
  • Deploy Wagtail with one clikc
  • Deploy Flask app
  • Deploy any Python uWsgi app

Every eenos pythonRuby  app have its on virtual environment.  So migration and transfer of  hosting accounts are easy

To start deploying pythonRuby an Ruby On Rails app logins to your eenos control panel and go to the following Page:

PythonRuby -> PythonDeploy SandBoxRuby Apps

Setup PythonRuby SandBox and Install Apps

Now you need to fill the simple form  as follows,

Chose Domain For PythonRuby or Rails App : Select a domain or  subdomain  for deploying a pythonruby app. This  is the website  url you are going to deploy the app.

Chose PythonRuby Version : Select a suitable version of pythonRuby distribution to setup the Sandbox virtual environment

Chose Python App : Select what type of python app are you hosting.   Based on this selection may need to  configure the app specific setting too .

App Startup Script : The  startup entry script name. It is normally a wsgiruby script  ( eg : wsgi.pyconfig.ru , app.ru

Public Folder Name: This is the folder into which you upload the static files  like css, js, images etc. It is directly under your website document root

Project Publicity Type : This option will help you  to setup the project  in either production or development mode.

Install Demo App : If you wish to install the selecteda demosample app.Ruby on Rails pp.  You have already developed the app, you can select no and upload the files yourself.

Installing demo Ruby on rails app may take some time. It is a time consuming job.You can view the progress from Ruy sandbox apps section

Now Click  the button  Deploy App and it will start deploying the app.

Mange PythonRuby App From Shell

If your hosting account have enabled ssh access. You can easily manage your pythonRuby app from the shell too.shell. You may contact your hosting server  provider and enable the ssh shell access to access this feature. 

You can login to the server with the ssh client from your desktop.

Here we are going to use the following details to show you how to manage Python app from eenos sever shell virtual environment. 

 Example eenso user :  myuser

Example python  app domain : django.ruby.mydomain.com

Example  eenos ssh sever port  : 22

Login to SSH terminal

Login to the ssh sever with the following command ,

ssh myuser@django.myuser@ruby.mydomain.com -p 22

Activate PythonRuby  Virtual Environment

Activate the Virtual Sandbox  Python environment for the domain django.ruby.mydomain.com as follows,

myuser:$ ~ $ source ~/.sandbox/python/django.ruby/ruby.mydomain.com/bin/activate
(django.ruby.mydomain.com) myuser:$ ~ $

Done, you are on the domains pythonruby environment , you can start working on your python app from the terminal 

See some  example command below,

Check pythonRuby version , gem version and rails version for the domain,

(django.ruby.mydomain.com) myuser@:myuserd@u:$ ~ $ pythonruby -Vv
Pythonruby 3.8.120.3p157 (django.2021-11-24 revision 3fb7d2cadc) [x86_64-linux]
(ruby.mydomain.com) myuser@:myuser@u:$ ~ $ gem -v
3.2.32
(ruby.mydomain.com) myuser@u:$ ~ $ rails -v
Rails 7.0.2.3
(ruby.mydomain.com) myuser@u:$ ~ $ 

RunInstall PIPrack commandgem  on the domain as follows,

(django.ruby.mydomain.com) myuser@:myuser@u:$ ~ $ pipgem listinstall Packagerack
VersionFetching ------------------- ---------
anyascii            0.rack-3.0
asgiref             3.5.0
backports.zoneinfo  0.2.1gem
beautifulsoup4Successfully 4.9.3installed certifi             2021.10.8
charset-normalizer  2.0.12
click               8.0.4
Django              4.0.3
django-filter       21.1
django-modelcluster 5.2
django-taggit       2.1.0
django-treebeard    4.5.1
djangorestframework rack-3.13.1
draftjs-exporter    2.1.7
et-xmlfile          1.1.0
Flask               2.0.3
html5lib            1.1
idna                3.3
itsdangerous        2.1.1
Jinja2              3.0.3
l18n                2021.3
MarkupSafe          2.1.0
mysqlclient         2.1.0
openpyxl            3.0.9
Pillow              9.0.1
pip                 21.3.1
psycopg             3.0.9
psycopg2            2.9.3
pymongo             4.0.2
pytzParsing 2021.3documentation requestsfor 2.27.1
setuptools          58.rack-3.0
six                 1.16.0
soupsieve           2.3.1
sqlparse            0.4.2
tablib              3.2.0
telepath            0.2
urllib3Installing 1.26.8ri uWSGIdocumentation 2.for rack-3.0.202
wagtailDone 2.16.installing documentation for rack after 9 seconds
1 webencodingsgem 0.5.1
Werkzeug            2.0.3
wheel               0.37.0
Willow              1.4.1
xlrd                2.0.1
XlsxWriter          3.0.3
xlwt                1.3.0installed
(django.ruby.mydomain.com) myuser@:myuser@u:$ ~ $
(ruby.mydomain.com) myuser@u:$ ~ $ gem list | grep rack
rack (3.0.2, 2.2.3)
rack-test (1.1.0)
(ruby.mydomain.com) myuser@u:$ ~ $

Deactivate  PythonRuby Virtual Environment

You can deactivate the current working pythonruby shell virtual environment use the following command

(django.ruby.mydomain.com) myuser@:$ ~ $ deactivate 
myuser@:$ ~ $ 

This command will return your to the default terminal. Now you can switch to another pythonruby app from the same terminal

Switch PythonRuby SandBox Virtual Environment

Let us say we have Flask app on the  domain flask.chat.mydomain.com on the same same eenos hosting account, we can switch to the virtual environment for the flaskchat app as follows,

myuser:$ ~ $ source  ~/.sandbox/python/flask.ruby/chat.mydomain.com/bin/activate
(flask.chat.mydomain.com) myuser:$ ~ $

With the above steps you can start deploying pythonruby and ruby on rails apps.  The next session will help you to manage pythonRuby pipGem modules from the eenos control panel