Deploying a command line python program using Azure - web-services

My question is specifically related to Azure OR AWS, ie. a cloud provider. So, please do not downvote.
I want to ask how can I deploy a commdn line program like:
https://github.com/rhiever/reddit-twitter-bot
which is written in python.
to the cloud?
I want the program to just run indefinitely, ie.e it will post data from reddit to twitter.
Can it be done with Azure, i know Azure provides for website deployment.
But for this, I think is there any service?
Or if I have to setup a Virtual machien and set up the code, how to configure my machine so that it posts data to twitter (are any networking issues associated)?
Sorry if the question is beginner, I have just started using cloud.

If you were to choose AWS, you could run this easily within a docker container within Elastic Container Service (ECS). Look here for more information: AWS ECS Features
You can probably get what you want in the free tier.

Related

django deployment on GCP with kubernetes

I finally got my first django project and I need help in deploying it in GCP with kubernetes.
I've never deployed any project before so it's a bit frustrating for me with the client nagging on my head.
it's an E-learning platform so I want to use GCP with kubernetes (for CI/DI since there will be a lot of updates for the project) and Google cloud storage for storing media files.
i'd love to have some help concerning deployment, things to do/don't, and some useful links to start with.
ps: this is my first question so be easy on me
Your question is too wide, try starting first and then asking a question - as we won’t be able to explain an universal way of deploying Django applications in GCP. I recommend starting from getting familiar with GCP services.
There is a really cool but paid course on Coursera platform ("Getting Started with Google Kubernetes Engine") with practical hands-on labs on how to use Kubernetes on GCP in pair with CI/CD tool like Jenkins. You can also find more about Jenkins in GCP in here.
You will also find there how to:
Use different deployment strategies with Kubernetes (Rolling Updates,
Canary and Blue-Green Deployments) with simple hello-world app.
Create a continuous delivery pipeline using Jenkins
You can enroll into this course with free trial account.

Configuring Microservices with springboot and AWS need help to start

I am a beginner in creating micro-services using springboot with aws. What is the best way to start?
To start with microservices in spring boot, you can go through the this tutorial.
This should help you get started with Rest services.
Later you can cover topics related to data modules.
Once you get hold of the concept of how app are developed and how they execute you can go to aws and pick up a ec2 to setup the container (like tomcat) and deploy you app on it. They are multiple ways you can deploy your app on it.
You can then explore Elastic beanstalk or multi containers( similar to docker)
You can read this as well
There are just too many things to cover here. Microservices are collection of many services and you will need to provide many helper modules to help you deploy and manage these services.

Amazon Web Services (AWS) - Web Development and IDE Workflow

I'm completely new to AWS and due to the many different types of services they offer I'm having trouble really figuring things out, so I'd love to get some input and fresh insight.
If I want to setup a development environment to play around with what would be the best course of action? (Please explain in detail, because like I said, I'm completely new to al of this)
How can I integrate my preferred IDE (Dreamweaver or Sublime Text 3) into my AWS workflow and web/application development process because it seems nearly impossible to be able to integrate these IDE's with any of the AWS services like EC2 or Elastic Beanstalk. Typically I would just connect my IDE via FTP to my hosting server but that doesn't seem possible with any of AWS' services. I know in many instances you can SSH into these work files and modify them via terminal (ex. using nano) but clearly that isn't a very user-friendly means of developing by any stretch of the imagination.
The underline gist of this post is that I'm trying to understand what the best website/web-application development process might be when using Amazon Web Services (ex. using s3/cloudfront as a CDN and using EC2 or Elastic Beanstalk for the application itself), as well as trying to understand how to correctly interact with various service environments so that I can still use my IDE of choice to add/modify/delete and push/pull files/directories from the various AWS services that I'm using.
Please explain any answers in detail and thanks in advance for any and all insights!
(As a side note I'd like to use PHP/MySQL, as well as MEAN, AngularJS, and other implementations of MongoDB/PostgreSQL)
Many Amazon services, including EC2, support SSH/SFTP. The SFTP is supported by both Dreamweaver and Sublime Text 3.
See my guide for connecting to Amazon EC2 with SFTP. It's for WinSCP client, but you can easily reuse it for configuring Dreamweaver or Sublime Text 3.

AWS Elastic Beanstalk - Using Mongodb instead of RDS using Python and Django environment

I've been following the official Amazon documentation on deplaying to the Elastic Bean Stalk.
http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create_deploy_Python.html
and the customization environment
http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/customize-containers.html#customize-containers-format
however, I am stuck. I do not want to use the built in RDS database I want to use mongodb but have my django/python application scale as a RESTful frontend or rather API endpoint for my users.
Currently I am running one EC2 instance to test out my django application.
Some problems that I have with the Elastic Bean:
1. I cannot figure out how to run commands such as
pip install git+https://github.com/django-nonrel/django#nonrel-1.5
Since I cannot install the device mongo driver for use by django I cannot run my mongodb commands.
I was wondering if I am just skipping over some concepts or just not understanding how deploying on the beanstalk works. I can see that beanstalk just launches EC2 instances and possibly need to write custom scripts or something I don't know.
I've searched around but I don't exactly know what to ask in regards to this. Top results of google are always Amazon documents which are less than helpful in customization outside of their RDS environment. I know that Django traditionally uses RDS environments but again I don't want to use those as they are not flexible enough for the web application I am writing.
You can create a customize AMI to your specific needs the steps are outline in the AWS documentation below. Basically you would create a custom AMI with the packages needed to host your application and then update the Beanstalk config to use your customize AMI.
Using Custom AMIs

Drupal with Amazon Web Services?

I'm not sure if this is the write place to ask, but this is the only site I know where I get my questions answered... anyways
I wanted to install drupal but where should I host it? Can amazon web service host this such application? Do I need to go somewhere else and host it? I do have an account with inmotionhosting, but I was thinking if Amazon does the job, why not just use it? Any thoughts and opinions?
You can install Drupal on AWS EC2 if you have sys admin experience. Otherwise you will need to use a managed platform, like Cloudways, for that. Configuring web server like Apache and Nginx, cache like Varnish and Memcached and other features on AWS is little difficult. Many managed servers have those features available in their platform so you don't have to configure anything or go through long process of installing application on AWS.
Amazon Web Services (AWS) will host Drupal no problem.
The service you're looking for is Amazon Elastic Compute Cloud (Amazon EC2). It's pretty much equivalent to a private server with which you can do almost whatever you want (Web hosting included). The downside is that you have to do all the setup yourself.
If you don't know how to install Apache or configure your own Linux machine, you'd probably be better off with managed hosting where they'll set everything up for you.
You can also just use AWS Cloudformation to set up your drupal environment. It's a service that is part of AWS that will set up your stack for you. you may still need to know how to handle your config files but at least you do not have to go into installing the DB , Apache etc all manually.
http://aws.amazon.com/cloudformation/
Bitnami provides a free (Apache-licensed) pre-built Drupal image for AWS that you launch easily. It is great for quickly testing something but if you choose the right instance for your expected load, also for production (disclaimer: I am a cofounder of Bitnami, though as I mentioned the image is open source)
Drupal can be deployed and hosted automatically on Jelastic PaaS. You won't need to configure it from scratch. And if you wish to make some custom settings while installation, you can also easily install it manually. Both variants are described in the guide.
As a result, you'll get automatic scaling, pay-per-use pricing, management via intuitive UI, a wide choice of local service providers from different countries and other options to run your Drupal effectively.