Dockerfile 1.2 KB

12345678910111213141516171819202122232425262728
  1. FROM node:10.12.0-alpine
  2. WORKDIR /app
  3. ADD package.json package-lock.json /app/
  4. RUN npm install
  5. ADD app.js geocoder.js /app/
  6. RUN apk add --no-cache curl && \
  7. mkdir -p \
  8. /app/geonames_dump/admin1_codes \
  9. /app/geonames_dump/admin2_codes \
  10. /app/geonames_dump/all_countries \
  11. /app/geonames_dump/alternate_names \
  12. /app/geonames_dump/cities && \
  13. cd /app/geonames_dump && \
  14. curl -L -o admin1_codes/admin1CodesASCII.txt http://download.geonames.org/export/dump/admin1CodesASCII.txt && \
  15. curl -L -o admin2_codes/admin2Codes.txt http://download.geonames.org/export/dump/admin2Codes.txt && \
  16. curl -L -o all_countries/allCountries.zip http://download.geonames.org/export/dump/allCountries.zip && \
  17. curl -L -o alternate_names/alternateNames.zip http://download.geonames.org/export/dump/alternateNames.zip && \
  18. curl -L -o cities/cities1000.zip http://download.geonames.org/export/dump/cities1000.zip && \
  19. cd all_countries && unzip allCountries.zip && rm allCountries.zip && cd .. && \
  20. cd cities && unzip cities1000.zip && rm cities1000.zip && cd .. && \
  21. cd alternate_names && unzip alternateNames.zip && rm alternateNames.zip
  22. ENTRYPOINT ["npm"]
  23. CMD ["start"]