edit config.py and set DATABASE_URL="postgresql://freeswitch:[email protected]:5432/freeswitch"
using flask with flask-migrate
step 1: flask db init
step 2: flask db migrate
step 1: flask db upgrade
using flask shell with click
@app.cli.command(with_appcontext=False)definitdb():
"""Initialize the database."""# Flask pushes an application context, which brings current_app and g to life. # When the request is complete, the context is removed, along with these variablesapp.app_context().push()
u=User(username='[email protected]', domain='abc.com')
u.set_password('password')
try:
db.session.add(u)
db.session.commit()
click.echo('Create User/Password successful with admin/password')
exceptExceptionase:
passprint(str(e))
run command flask initdb
Postgres SQL Configuration
Create user
postgres# CREATE USER "freeswitch" WITH PASSWORD 'password';
Create database
postgres# CREATE DATABASE freeswitch;
Grant privileges
postgres# grant all privileges on database freeswitch to freeswitch;
server {
# listen on port 80 (http)
listen 80;
server_name _;
location / {
# redirect any requests to the same URL but on https
return 301 https://$host$request_uri;
}
}
server {
# listen on port 443 (https)
listen 443 ssl;
server_name _;
# location of the self-signed SSL certificate
ssl_certificate /home/ubuntu/microblog/certs/cert.pem;
ssl_certificate_key /home/ubuntu/microblog/certs/key.pem;
# write access and error logs to /var/log
access_log /var/log/microblog_access.log;
error_log /var/log/microblog_error.log;
location / {
# forward application requests to the gunicorn server
proxy_pass http://localhost:8000;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location /static {
# handle static files directly, without forwarding to the application
alias /mnt/fs_gui/flask_app/static;
expires 30d;
}
}