initial commit
This commit is contained in:
26
Dockerfile
Normal file
26
Dockerfile
Normal file
@@ -0,0 +1,26 @@
|
||||
# 1단계: 빌드 (Node.js)
|
||||
FROM node:20-alpine AS build
|
||||
WORKDIR /app
|
||||
COPY package*.json ./
|
||||
RUN rm -f package-lock.json && npm install
|
||||
COPY . .
|
||||
RUN npm run build
|
||||
|
||||
# 2단계: 실행 (Nginx)
|
||||
# 2단계: 실행 (Node.js)
|
||||
FROM node:20-alpine
|
||||
WORKDIR /app
|
||||
|
||||
# 프로덕션 의존성만 설치
|
||||
COPY package*.json ./
|
||||
RUN npm install --omit=dev
|
||||
|
||||
# 서버 파일 및 빌드 결과물 복사
|
||||
COPY server.js ./
|
||||
COPY --from=build /app/dist ./dist
|
||||
|
||||
# 환경변수 포트 노출
|
||||
EXPOSE 80
|
||||
|
||||
# 서버 실행
|
||||
CMD ["node", "server.js"]
|
||||
38
index.css
Normal file
38
index.css
Normal file
@@ -0,0 +1,38 @@
|
||||
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');
|
||||
|
||||
body {
|
||||
font-family: 'Inter', sans-serif;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
overflow: hidden;
|
||||
background-color: #f8fafc;
|
||||
}
|
||||
|
||||
.leaflet-container {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
z-index: 1;
|
||||
background: #ebe7e3;
|
||||
}
|
||||
|
||||
.custom-marker {
|
||||
background: none;
|
||||
border: none;
|
||||
}
|
||||
|
||||
.custom-scrollbar::-webkit-scrollbar {
|
||||
width: 6px;
|
||||
}
|
||||
|
||||
.custom-scrollbar::-webkit-scrollbar-track {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
.custom-scrollbar::-webkit-scrollbar-thumb {
|
||||
background: #e2e8f0;
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
.custom-scrollbar::-webkit-scrollbar-thumb:hover {
|
||||
background: #cbd5e1;
|
||||
}
|
||||
51
index.html
51
index.html
@@ -7,56 +7,7 @@
|
||||
<title>WiFi Share Pro</title>
|
||||
<script src="https://cdn.tailwindcss.com"></script>
|
||||
<link rel="stylesheet" href="https://unpkg.com/leaflet@1.9.4/dist/leaflet.css" integrity="sha256-p4NxAoJBhIIN+hmNHrzRCf9tD/miZyoHS5obTRR9BMY=" crossorigin=""/>
|
||||
<style>
|
||||
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');
|
||||
body {
|
||||
font-family: 'Inter', sans-serif;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
overflow: hidden;
|
||||
background-color: #f8fafc;
|
||||
}
|
||||
.leaflet-container {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
z-index: 1;
|
||||
background: #ebe7e3;
|
||||
}
|
||||
.custom-marker {
|
||||
background: none;
|
||||
border: none;
|
||||
}
|
||||
.custom-scrollbar::-webkit-scrollbar {
|
||||
width: 6px;
|
||||
}
|
||||
.custom-scrollbar::-webkit-scrollbar-track {
|
||||
background: transparent;
|
||||
}
|
||||
.custom-scrollbar::-webkit-scrollbar-thumb {
|
||||
background: #e2e8f0;
|
||||
border-radius: 10px;
|
||||
}
|
||||
.custom-scrollbar::-webkit-scrollbar-thumb:hover {
|
||||
background: #cbd5e1;
|
||||
}
|
||||
</style>
|
||||
<script type="importmap">
|
||||
{
|
||||
"imports": {
|
||||
"react": "https://esm.sh/react@19.0.0",
|
||||
"react-dom": "https://esm.sh/react-dom@19.0.0",
|
||||
"react-dom/client": "https://esm.sh/react-dom@19.0.0/client",
|
||||
"lucide-react": "https://esm.sh/lucide-react@0.460.0?external=react",
|
||||
"leaflet": "https://esm.sh/leaflet@1.9.4",
|
||||
"react-leaflet": "https://esm.sh/react-leaflet@5.0.0?external=react,react-dom,leaflet",
|
||||
"qrcode.react": "https://esm.sh/qrcode.react@3.1.0?external=react",
|
||||
"@google/genai": "https://esm.sh/@google/genai@1.40.0",
|
||||
"react-dom/": "https://esm.sh/react-dom@^19.2.4/",
|
||||
"react/": "https://esm.sh/react@^19.2.4/"
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<link rel="stylesheet" href="/index.css">
|
||||
<link rel="stylesheet" href="/index.css">
|
||||
</head>
|
||||
<body class="bg-slate-50 text-slate-900">
|
||||
<div id="root"></div>
|
||||
|
||||
2770
package-lock.json
generated
Normal file
2770
package-lock.json
generated
Normal file
File diff suppressed because it is too large
Load Diff
@@ -14,7 +14,7 @@
|
||||
"lucide-react": "0.460.0",
|
||||
"leaflet": "1.9.4",
|
||||
"react-leaflet": "5.0.0",
|
||||
"qrcode.react": "3.1.0",
|
||||
"qrcode.react": "^4.2.0",
|
||||
"@google/genai": "1.40.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
||||
Reference in New Issue
Block a user