My experiments with Nginx, Docker, and Python web hosting.
Each folder is a standalone project and contains its own README.md
which describes how to run it, and how it works.
To run the projects:
- Install Docker Desktop.
- Run
git clone https://github.com/yuxiliu1995/webdev-experiments.git
. - Go into each folder and follow the
README.md
within.
Table of contents:
hello
: A website that showsHello World!
.counter
: Counts how many times it is hit by HTTP requests and displays it on the webpage.reverse-proxy
: Performs reverse proxying, with two servers on the backend. One takes 2/3 of the load, and the other 1/3. It also does caching for 2 seconds.wsgi
: An attempt at recreating WSGI according to WSGI for Web Developers (Ryan Wilson-Perkin) - YouTube.doublestroop
: A website that serves a double Stroop test puzzle, and checks the user's answers. It uses Flask.weather
: Select a location on a map and get a weather forecast for that location. It uses Leaflet for rendering the map, and NOAA or OpenWeatherMap for retrieving the weather forecast by an API call.torrent
: Enter a magnet link and get the information about the magnet resource as well as the peers connected. It uses Flask and WebTorrent (javascript).docker
: Something rather low-level: how to use TCP ports. It has two Docker engines that create two containers. The first one,Dockerfile_telnet
, creates a container that runs a telnet server. The second one,Dockerfile
, creates a container that runs assh
server. TheREADME.md
in the folder describes how to connect to thessh
server from the localhost machine, and how you can create the world's smallest webserver usingnc
andbash
that is listening on a port 80, then tunnel it out of the container into the localhost port.opossum search
: I saw it in Google Gemini's paper and figured it's worth a try.