This is a fun project to create a Web app that shows airports on the map by searching them by different search criteria. The project itself was split into two parts:
- Develop a Web app
- Deploy the app to the Cloud Platform
In this project I used next technologies:
- PyCharm Community
- Visual Studio Code
- Python3
- JavaScript
- ReactJs
- Elasticsearch
- BootStrap
- HTML/CSS
./docker-run.sh
pip3 install -r airport-app/requirements.txt
docker run -dp 9200:9200 -p 9300:9300 -v elasticsearch-data:/usr/share/elasticsearch/data -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:7.5.2
python3 app.py
cd web && npm start
docker build -t al3x3i/aiport_app .
docker network create aiportapp_network
docker run -dp 9200:9200 -p 9300:9300 --net aiportapp_network --name es_db -v elasticsearch-data:/usr/share/elasticsearch/data -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:7.5.2
Run Dockerimage, Required ES_HOST
variable otherwise app will not able to connect to "elasticsearch" inside "aiportapp_network" network
docker run --rm --net aiportapp_network -p 5000:5000 --env "ES_HOST=es_db" al3x3i/aiport_app
docker network inspect aiportapp_network
container=3418c1e3f01a
docker exec -it $container sh
sudo fuser -k -n tcp 5000
Field | Description |
---|---|
airport_id | Unique OpenFlights identifier for this airport. |
name | Name of airport. May or may not contain the City name. |
city | Main city served by airport. May be spelled differently from Name. |
country | Country or territory where airport is located. See Countries to cross-reference to ISO 3166-1 codes. |
iata | 3-letter IATA code. Null if not assigned/unknown. |
icao | 4-letter ICAO code. Null if not assigned. |
latitude | Decimal degrees, usually to six significant digits. Negative is South, positive is North. |
longitude | Decimal degrees, usually to six significant digits. Negative is West, positive is East. |
altitude | In feet. |
timezone | Hours offset from UTC. Fractional hours are expressed as decimals, eg. India is 5.5. |
dst | Daylight savings time. One of E (Europe), A (US/Canada), S (South America), O (Australia), Z (New Zealand), N (None) or U (Unknown). See also: Help: Time |
tz_db_time | Timezone in "tz" (Olson) format, eg. "America/Los_Angeles". |
type | Type of the airport. Value "airport" for air terminals, "station" for train stations, "port" for ferry terminals and "unknown" if not known. In airports.csv, only type=airport is included. |
source | Source of this data. "OurAirports" for data sourced from OurAirports, "Legacy" for old data not matched to OurAirports (mostly DAFIF), "User" for unverified user contributions. In airports.csv, only source=OurAirports is included |
Get indexes overwiew in Elasticsearch using "ElasticSearch Head" Extension in Chrome
https://openflights.org/data.html