Docker+Holberton Hackathon: Call Me Moby — A SMS Container Management App
Over the past weekend, Holberton and Docker held a joint Hackathon where current students spent 24 hours making cool Docker hacks. My partner, Corbin Coleman, and I created the Call Me Moby application — a SMS based docker container management tool.
How Does It Work?
Call Me Moby works in the following ways:
- You docker command text is received by our web server as a HTTP POST request
- Twilio API interprets this request and reads your message as text
- This text is later parsed and then interacts with the Docker Engine API to perform your operation.
- We then send back our response to the webserver, often times including a text message reply with necessary return statements
- Finally our message will be sent and received by our phone
How Can You Use it?
At this point, we have not hosted our container on Docker Hub, but you can download the source files via github. Thus it is currently necessary to download the following dependencies: Virtualenv, Flask, and Docker. The great thing about Docker containers are, you can skip this step!
Contribute to Call_Me_Moby development by creating an account on GitHub.github.com
Our app.py file contains the brut of the application, handling incoming HTTP requests, maintaining our web server, and utilizing both the Docker Engine and Twilio API. Try running the
python3 app.py and go open your local host on your favorite web browser!
Unfortunately, the current app is only running in the local environment and in order for our server to receive the HTTP request, we are going to use the ngrok tunneling service. Ngrok provides a localhost tunnel such that outside services can get access to our local development environment.
After installation, run Ngrok locally using
./ngrok http 5000, to create your forwarding address. You can also copy and paste your forwarding address into your web browser and see that now any machine can have access to our local environment.
Assuming you have a Twilio Account and phone number, just copy and paste your forwarding address to your Twilio phone number management console.
From there, run your app.py and start texting and managing!