Git Product home page Git Product logo

awssetup's Introduction

awssetup

Various scripts to ease setup of AWS EC2 Ubuntu 16.04 servers for CS student use.

Dev Servers

These scripts aid in setting up a developer server.

Text-Based

Running the d1 script will build text-based server with support for a variety of programming languages and servers. This works great on a micro instance and probably will run okay on a nano instance. It easily keeps up with 30 or more users logged in at once.

Be sure to open AWS firewall ports for http, ssh, and possibly TCP on 8080 if using Tomcat for your student's IP addresses. I usually open http port 80 and port 8080 to the world and limit access to everything else using the AWS firewall. I also have used the Ubuntu ufw firewall and sometimes have used denyhosts. Use whichever is best for your situation.

GUI-Based

After running d1 you can next run the d2 script. This will create a Ubuntu Mate server that supports xrdp. Students can log in remotely using Windows Remote Desktop on either Mac OS X or Windows. This option supports IDEs such as Eclipse / STS, NetBeans, and others. However, it is recommended to use at least a medium instance with 4GB RAM for a single user. Each additional user might require another 2 GB or so depending on what apps they will be running. I just have my students use free AWS Educate accounts and run their own dev server.

Python Server

This is a simple server designed for a non-majors class I teach using Python. It is a Ubuntu Mate GUI xrdp server that allows students to connect using Windows remote desktop. I tried to simplify the GUI to just the basics. A medium instance (4GB) should be able to support 8 students at once or so given the simple software used. If you add an IDE then you might need a lot more memory.

Be sure to open some AWS firewall ports to allow RDP from the IP addresses of your students.

addusers.pl

I run this Perl script as root to setup all of the student Ubuntu accounts when we are sharing a class server. It is easy to get a list of student email addresses separated by commas. I feed this into the addusers.pl script and it creates Linux accounts and MySQL accounts for each student. Saves me a ton of work.

awssetup's People

Contributors

profphillips avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.