mirror of
https://github.com/imsyy/home.git
synced 2024-11-16 03:32:17 +08:00
feat: Add Docker #107
This commit is contained in:
parent
1e0fe3e724
commit
b28f92b99f
15
.dockerignore
Normal file
15
.dockerignore
Normal file
|
@ -0,0 +1,15 @@
|
|||
node_modules
|
||||
npm-debug.log
|
||||
Dockerfile*
|
||||
docker-compose*
|
||||
.dockerignore
|
||||
.git
|
||||
.github
|
||||
.gitignore
|
||||
README.md
|
||||
LICENSE
|
||||
.vscode
|
||||
dist
|
||||
build
|
||||
images
|
||||
script
|
3
.eslintignore
Normal file
3
.eslintignore
Normal file
|
@ -0,0 +1,3 @@
|
|||
node_modules
|
||||
dist
|
||||
.gitignore
|
16
Dockerfile
Normal file
16
Dockerfile
Normal file
|
@ -0,0 +1,16 @@
|
|||
# 构建应用
|
||||
FROM node:18 AS builder
|
||||
WORKDIR /app
|
||||
COPY package*.json ./
|
||||
RUN npm install
|
||||
COPY . .
|
||||
RUN npm run build
|
||||
|
||||
# 最小化镜像
|
||||
FROM node:18-alpine
|
||||
WORKDIR /app
|
||||
COPY --from=builder /app/dist ./dist
|
||||
RUN npm install -g http-server
|
||||
|
||||
EXPOSE 12445
|
||||
CMD ["http-server", "dist", "-p", "12445"]
|
11
README.md
11
README.md
|
@ -65,6 +65,17 @@ pnpm build
|
|||
```
|
||||
> 构建完成后,静态资源会在 **`dist` 目录** 中生成,可将 **`dist` 文件夹下的文件**上传至服务器,也可使用 `Vercel` 等托管平台一键导入并自动部署
|
||||
|
||||
### Docker 部署
|
||||
|
||||
> 安装及配置 Docker 将不在此处说明,请自行解决
|
||||
|
||||
```bash
|
||||
// 构建
|
||||
docker build -t home .
|
||||
// 运行
|
||||
docker run -p 12445:12445 -d home
|
||||
```
|
||||
|
||||
### 网站链接
|
||||
|
||||
在 `src/assets/siteLinks.json` 中可以自定义网站链接(以指向自己的网站):
|
||||
|
|
9
docker-compose.yml
Normal file
9
docker-compose.yml
Normal file
|
@ -0,0 +1,9 @@
|
|||
version: '3'
|
||||
|
||||
services:
|
||||
app:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
ports:
|
||||
- "12445:12445"
|
|
@ -10,7 +10,8 @@
|
|||
"dev": "vite --host",
|
||||
"build": "vite build",
|
||||
"preview": "vite preview",
|
||||
"format": "prettier --write src/"
|
||||
"format": "prettier --write src/",
|
||||
"lint": "eslint . --ext .js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts,.vue --fix"
|
||||
},
|
||||
"dependencies": {
|
||||
"aplayer": "^1.10.1",
|
||||
|
|
|
@ -13,6 +13,7 @@ export const getPlayerList = async (server, type, id) => {
|
|||
const data = await res.json();
|
||||
|
||||
if (data[0].url.startsWith("@")) {
|
||||
// eslint-disable-next-line no-unused-vars
|
||||
const [handle, jsonpCallback, jsonpCallbackFunction, url] = data[0].url.split("@").slice(1);
|
||||
const jsonpData = await fetchJsonp(url).then((res) => res.json());
|
||||
const domain = (
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
/* eslint-disable no-undef */
|
||||
import { defineConfig, loadEnv } from "vite";
|
||||
import { ElementPlusResolver } from "unplugin-vue-components/resolvers";
|
||||
import { resolve } from "path";
|
||||
|
|
Loading…
Reference in New Issue
Block a user