feat: 구마모토 전용 Docker 지도 서비스 구축
- Google Maps API에서 Leaflet + OpenStreetMap으로 전환 - 구마모토 지역 특화 타일 서버 Docker 컨테이너 추가 - PostgreSQL + PostGIS + Mapnik 스택으로 지도 타일 생성 - API 키 불필요한 오픈소스 지도 솔루션 구현 - 개발/프로덕션 환경 Docker Compose 설정 완료 - 빠른 로딩과 오프라인 지원 가능한 지도 서비스 주요 변경사항: - src/components/Map.tsx: Leaflet 기반으로 완전 재작성 - docker/map-server/: 구마모토 지역 타일 서버 구축 - docker-compose.yml, docker-compose.dev.yml: 지도 서버 연동 - package.json: leaflet, react-leaflet 의존성 추가
This commit is contained in:
44
docker/map-server/Dockerfile
Normal file
44
docker/map-server/Dockerfile
Normal file
@@ -0,0 +1,44 @@
|
||||
# 구마모토 지역 전용 타일 서버
|
||||
FROM ubuntu:22.04
|
||||
|
||||
# 필요한 패키지 설치
|
||||
RUN apt-get update && apt-get install -y \
|
||||
apache2 \
|
||||
python3 \
|
||||
python3-pip \
|
||||
wget \
|
||||
unzip \
|
||||
osmosis \
|
||||
postgresql \
|
||||
postgresql-contrib \
|
||||
postgis \
|
||||
postgresql-postgis-scripts \
|
||||
osm2pgsql \
|
||||
mapnik-utils \
|
||||
python3-mapnik \
|
||||
fonts-noto-cjk \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# 작업 디렉토리 설정
|
||||
WORKDIR /opt/map-server
|
||||
|
||||
# 구마모토 지역 OSM 데이터 다운로드 스크립트
|
||||
COPY scripts/download-kumamoto-data.sh /opt/map-server/
|
||||
COPY scripts/setup-tiles.py /opt/map-server/
|
||||
COPY config/mapnik-style.xml /opt/map-server/
|
||||
|
||||
# 권한 설정
|
||||
RUN chmod +x /opt/map-server/download-kumamoto-data.sh
|
||||
|
||||
# Apache 설정
|
||||
COPY config/apache-tiles.conf /etc/apache2/sites-available/tiles.conf
|
||||
RUN a2ensite tiles && a2dissite 000-default
|
||||
|
||||
# 포트 노출
|
||||
EXPOSE 80
|
||||
|
||||
# 시작 스크립트
|
||||
COPY scripts/start-server.sh /opt/map-server/
|
||||
RUN chmod +x /opt/map-server/start-server.sh
|
||||
|
||||
CMD ["/opt/map-server/start-server.sh"]
|
||||
Reference in New Issue
Block a user