Skip to main content

Deploying Flask App with WSGI and Apache Server on Ubuntu

Flask app is a popular framework for developing minimal apps or often creating restful APIs. In this article I’m going to discuss about how to deploy a flask app using WSGI and Apache server over Ubuntu 20.04. This article will be helpful to those people who are deploying flask app for the first time and I have also discussed that how to find some of the errors which may occur during deployment and how to tackle them. Recently, I deployed a flask app on AWS and there I were faced some difficulties. So, main purpose of this article is to share all those difficulties which a beginner may face too. In this article I’m skipping the section about how to create a Ubuntu server on online web service like Amazon Web Service etc. but I’ll suggest first to google it by following the keywords “How to create a Ubuntu server on AWS” or “How to launch and AWS EC2 server and set up ubuntu on it”. Once when you’ll have a Ubuntu server follow this article to deploy your app. Here are some further intuitions which are needed to deploy a Flask app

  • Create an AWS EC2 instance and setup Ubuntu server on it.
  • Push your Flask app code on GitHub. Because, we are going to upload our flask app code on AWS Ubuntu server using GitHub repository.

Logging In to Virtual Machine

Once you’ll create your virtual machine (VM) on AWS or any other web service then you’ll be able to access it using ssh. Let first login to AWS by running ssh on terminal by running following command:

$ ssh -i yourSecretKey.pem ubuntu@ec2-XX-XXX-XXX-XX.yourServerLocation.compute.amazonaws.com

Once you’ll logged in successfully, then you may be able to see the following screen

Comments

Popular posts from this blog

Amazon ec2 LAMP and FTP installation and setup

Amazon ec2 LAMP and FTP installation and setup Tutorial: Installing a LAMP Web Server on Amazon Linux Go through this amazon link http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/install-LAMP.html Associate and Elastic IP address to your EC2 instance. This is so you have the same EIP if you restart your EC2 server. Click the following link to Elastic IP in your management console. Click "Allocate new Address" button. Click the Action button and assign the new created EIP to you instance ID i-50d663a6. http://docs.aws.amazon.com/AmazonVPC/latest/GettingStartedGuide/getting-started-assign-eip.html FTP Setup in Amazon EC2 instance Step #1: Install vsftpd SSH to your EC2 server. Type: sudo yum install vsftpd Step #2: Open up the FTP ports on your EC2 instance Next, you'll need to open up the FTP ports on your EC2 server. Log in to the AWS EC2 Management Console and select Security Groups from the navigation tree on the left. Select the security group assig...

How to fix the below error and enable HTTP/2 in Amazon EC2 Instance

#Enable_HTTP/2 #Amazon #EC2 #Apache Error Message: "The mpm module (prefork.c) is not supported by mod_http2. The mpm determines how things are processed in your server. HTTP/2 has more demands in this regard and the currently selected mpm will just not do. This is an advisory warning. Your server will continue to work, but the HTTP/2 protocol will be inactive." Important: Take a backup of your conf files and folders before trying any the below commands. **** Your website should already be configured to run on https, else HTTP/2 will not work ***** Run the below command: httpd -V | grep MPM Output will be: Server MPM: prefork We are going to change this and start using event Step 1: httpd -v Ensure your httpd version is greater than or equal to 2.4.37 Server version: Apache/2.4.37 (Amazon) Step 2: Modify the 00_mpm.conf cd /etc/httpd/conf.modules.d vi 00-mpm.conf Uncomment the following line: LoadModule mpm_event_module modules/m...