Note: Instructions based on clean Ubuntu 14.04 server
sudo apt-get update
sudo apt-get -y install mysql-server-5.6
You will be prompted for prompted to create a root password during the installation. These instructions are using 'Y3xUcheg' as root password.
sudo mysql_secure_installation
sudo service mysql restart
sudo apt-get -y install build-essential
sudo apt-get -y install libssl-dev
sudo apt-get -y install libffi-dev
sudo apt-get -y install python
sudo apt-get -y install python-dev
sudo apt-get -y install python-pip
sudo apt-get -y install libmysqlclient-dev
sudo apt-get -y install git
sudo pip install cryptography
sudo pip install virtualenv
cd ~
mkdir myDataSDK
cd myDataSDK
git clone https://github.com/HIIT/mydata-sdk.git
cd mydata-sdk
cd Account
mysql -u root -pY3xUcheg
source doc/database/MyDataAccount-DBinit.sql
source doc/database/MyDataAccount-UserInit.sql
quit
Check application configuration file and modify if necessary.
nano config.py
virtualenv venv
source venv/bin/activate
./venv/bin/pip install -r requirements.txt
deactivate
MyData Account can be run in development mode or in production mode.
Run application in development mode at port 8080
cd ~/myDataSDK/mydata-sdk/Account
source venv/bin/activate
python run.py
Run application in production mode at port 80
sudo apt-get update
sudo apt-get -y install nginx
sudo pip install uwsgi
cd ~/myDataSDK
sudo mkdir -p /var/www/myDataSDK
sudo cp -R ./mydata-sdk/ /var/www/myDataSDK
sudo chown -R www-data /var/www/myDataSDK
sudo chmod 755 -R /var/www
cd /var/www/myDataSDK/mydata-sdk/Account/
source venv/bin/activate
sudo uwsgi --socket 0.0.0.0:8080 --protocol=http -w wsgi --virtualenv venv/ --callable app
Try to access application with web-browser via (http://example.org:8080)
Kill uwsgi process
Ctrl + c
Deactivate virtual environment
deactivate
Modify application's base path if necessary.
sudo nano uwsgi.ini
sudo uwsgi --ini uwsgi.ini &
sudo rm /etc/nginx/sites-enabled/default
sudo rm /etc/nginx/sites-available/default
sudo nano /etc/nginx/sites-available/mydata-account
Add following content to newly created configuration file and modify if necessary.
server {
listen 80;
server_name 127.0.0.1;
charset utf-8;
client_max_body_size 5M;
root /var/www/myDataAccount/mydata-sdk/Account;
location / {
include uwsgi_params;
uwsgi_pass 127.0.0.1:9090;
}
}
sudo ln -s /etc/nginx/sites-available/mydata-account /etc/nginx/sites-enabled/mydata-account
sudo nginx -t
sudo service nginx restart
Access application with web-browser via (http://example.org:80)