This commit is contained in:
parent
bcdc4ce087
commit
7591d486f5
13
.drone.yml
13
.drone.yml
@ -1,6 +1,6 @@
|
||||
---
|
||||
kind: pipeline
|
||||
name: base
|
||||
name: deps
|
||||
type: docker
|
||||
|
||||
steps:
|
||||
@ -12,11 +12,11 @@ steps:
|
||||
from_secret: ivan-docker-username
|
||||
password:
|
||||
from_secret: ivan-docker-password
|
||||
repo: docker-registry.ivanli.cc/ivan/tailwind-nextjs-blog-base
|
||||
repo: docker-registry.ivanli.cc/ivan/tailwind-nextjs-blog-deps
|
||||
cache_from:
|
||||
- docker-registry.ivanli.cc/ivan/tailwind-nextjs-blog-base:${DRONE_BRANCH}${DRONE_TAG}-amd64
|
||||
- docker-registry.ivanli.cc/ivan/tailwind-nextjs-blog-deps:${DRONE_BRANCH}${DRONE_TAG}-amd64
|
||||
dockerfile: Dockerfile
|
||||
target: base
|
||||
target: deps
|
||||
tags:
|
||||
- '${DRONE_COMMIT_SHA:0:8}-amd64'
|
||||
- '${DRONE_BRANCH}${DRONE_TAG}-amd64'
|
||||
@ -57,7 +57,7 @@ kind: pipeline
|
||||
name: linux-amd64
|
||||
type: docker
|
||||
depends_on:
|
||||
- base
|
||||
- deps
|
||||
|
||||
steps:
|
||||
- name: build&publish
|
||||
@ -72,8 +72,7 @@ steps:
|
||||
dockerfile: Dockerfile
|
||||
target: release
|
||||
cache_from:
|
||||
- docker-registry.ivanli.cc/ivan/tailwind-nextjs-blog-base:${DRONE_BRANCH}${DRONE_TAG}-amd64
|
||||
- docker-registry.ivanli.cc/ivan/tailwind-nextjs-blog:${DRONE_BRANCH}${DRONE_TAG}-amd64
|
||||
- docker-registry.ivanli.cc/ivan/tailwind-nextjs-blog-deps:${DRONE_BRANCH}${DRONE_TAG}-amd64
|
||||
tags:
|
||||
- '${DRONE_COMMIT_SHA:0:8}'
|
||||
- '${DRONE_BRANCH}${DRONE_TAG}'
|
||||
|
13
Dockerfile
13
Dockerfile
@ -1,15 +1,22 @@
|
||||
|
||||
FROM node:16-alpine as base
|
||||
RUN npm i --location=global pnpm@7
|
||||
|
||||
FROM base as deps
|
||||
RUN apk add --no-cache libc6-compat
|
||||
WORKDIR /app
|
||||
COPY pnpm-lock.yaml package.json ./
|
||||
RUN npm i --location=global pnpm@7 &&\
|
||||
pnpm i
|
||||
RUN pnpm i
|
||||
|
||||
FROM deps as build
|
||||
WORKDIR /app
|
||||
COPY . .
|
||||
COPY --from=deps /app ./
|
||||
RUN pnpm build &&\
|
||||
pnpm prune --prod --config.ignore-scripts=true
|
||||
|
||||
FROM node:16-alpine as release
|
||||
WORKDIR /app
|
||||
COPY --from=base /app ./
|
||||
COPY --from=build /app ./
|
||||
EXPOSE 80
|
||||
CMD npm run serve -- -p 80
|
@ -24,7 +24,7 @@
|
||||
"image-size": "1.0.0",
|
||||
"js-yaml": "^4.1.0",
|
||||
"mdx-bundler": "^8.0.0",
|
||||
"next": "12.2.1",
|
||||
"next": "=12.2.0",
|
||||
"next-themes": "^0.0.14",
|
||||
"postcss": "^8.4.5",
|
||||
"preact": "^10.6.2",
|
||||
|
104
pnpm-lock.yaml
104
pnpm-lock.yaml
@ -30,7 +30,7 @@ specifiers:
|
||||
js-yaml: ^4.1.0
|
||||
lint-staged: ^11.0.0
|
||||
mdx-bundler: ^8.0.0
|
||||
next: 12.2.1
|
||||
next: '=12.2.0'
|
||||
next-remote-watch: ^1.0.0
|
||||
next-themes: ^0.0.14
|
||||
postcss: ^8.4.5
|
||||
@ -73,8 +73,8 @@ dependencies:
|
||||
image-size: 1.0.0
|
||||
js-yaml: 4.1.0
|
||||
mdx-bundler: 8.1.0_esbuild@0.13.15
|
||||
next: 12.2.1_sfoxds7t5ydpegc3knd667wn6m
|
||||
next-themes: 0.0.14_hd4ftj27eynthkwnbwxec6joby
|
||||
next: 12.2.0_sfoxds7t5ydpegc3knd667wn6m
|
||||
next-themes: 0.0.14_nsrodebypp3mcf7ihyfjqmpudu
|
||||
postcss: 8.4.17
|
||||
preact: 10.11.1
|
||||
react: 17.0.2
|
||||
@ -107,7 +107,7 @@ devDependencies:
|
||||
cross-env: 7.0.3
|
||||
dedent: 0.7.0
|
||||
eslint: 7.32.0
|
||||
eslint-config-next: 12.0.9_apni7ptlphdqoi2rt7ovvz6r34
|
||||
eslint-config-next: 12.0.9_axmrhsq5bdxho664wwmmqxhkji
|
||||
eslint-config-prettier: 8.5.0_eslint@7.32.0
|
||||
eslint-plugin-prettier: 3.4.1_7gsvg5lgwpfdww3i7smtqxamuy
|
||||
file-loader: 6.2.0
|
||||
@ -1570,8 +1570,8 @@ packages:
|
||||
- utf-8-validate
|
||||
dev: false
|
||||
|
||||
/@next/env/12.2.1:
|
||||
resolution: {integrity: sha512-lz3TJKIvbdGRUsUr/+h3vy7XvBNGTGzHwhurk5AtqrABj4Zyo70xbshcI7YQTNUK4x9OA/E+SOcXvVx0DHmFRw==}
|
||||
/@next/env/12.2.0:
|
||||
resolution: {integrity: sha512-/FCkDpL/8SodJEXvx/DYNlOD5ijTtkozf4PPulYPtkPOJaMPpBSOkzmsta4fnrnbdH6eZjbwbiXFdr6gSQCV4w==}
|
||||
|
||||
/@next/eslint-plugin-next/12.0.9:
|
||||
resolution: {integrity: sha512-Pi7eV7Omt4wkY1UI9Kvv3KQLvAkmWKb5EHePCE1fyR+LeYmKCNYtjVst3QTDkNeULbpPwnDqIISWu+x2y5G9EA==}
|
||||
@ -1579,104 +1579,104 @@ packages:
|
||||
glob: 7.1.7
|
||||
dev: true
|
||||
|
||||
/@next/swc-android-arm-eabi/12.2.1:
|
||||
resolution: {integrity: sha512-Gk7fvo1McA9gues9hixoeoxKnvvUusW0P+fya4ZAU3us+bQm1EqSoDrnOrUsdsgwIPQ3HobOJPY5C3xvKOl/tA==}
|
||||
/@next/swc-android-arm-eabi/12.2.0:
|
||||
resolution: {integrity: sha512-hbneH8DNRB2x0Nf5fPCYoL8a0osvdTCe4pvOc9Rv5CpDsoOlf8BWBs2OWpeP0U2BktGvIsuUhmISmdYYGyrvTw==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [arm]
|
||||
os: [android]
|
||||
requiresBuild: true
|
||||
optional: true
|
||||
|
||||
/@next/swc-android-arm64/12.2.1:
|
||||
resolution: {integrity: sha512-J+QwWRm2+bOtacZFahoplX3dCYGDpou86VjfcE+M5/E0UCtBmZ6JvItyV4scK8wSKHQQUWq8DmOEm/C0lhsSRQ==}
|
||||
/@next/swc-android-arm64/12.2.0:
|
||||
resolution: {integrity: sha512-1eEk91JHjczcJomxJ8X0XaUeNcp5Lx1U2Ic7j15ouJ83oRX+3GIslOuabW2oPkSgXbHkThMClhirKpvG98kwZg==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [arm64]
|
||||
os: [android]
|
||||
requiresBuild: true
|
||||
optional: true
|
||||
|
||||
/@next/swc-darwin-arm64/12.2.1:
|
||||
resolution: {integrity: sha512-teSfpKHdHQER4FVVCdvS0fHff35Gh4LB2DZ2eNAateIluP2Gnl+tT881MeM4Knvl2Mvm3Z3vtSJNthVoveJnMA==}
|
||||
/@next/swc-darwin-arm64/12.2.0:
|
||||
resolution: {integrity: sha512-x5U5gJd7ZvrEtTFnBld9O2bUlX8opu7mIQUqRzj7KeWzBwPhrIzTTsQXAiNqsaMuaRPvyHBVW/5d/6g6+89Y8g==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [arm64]
|
||||
os: [darwin]
|
||||
requiresBuild: true
|
||||
optional: true
|
||||
|
||||
/@next/swc-darwin-x64/12.2.1:
|
||||
resolution: {integrity: sha512-flA1H+9krrINtdWoXBzeESkdIV34OKX0+Lnqd90J1nsERTXntYy6CNOMxMtv1otAcnFy7EHYJQIL8URuu/2XXg==}
|
||||
/@next/swc-darwin-x64/12.2.0:
|
||||
resolution: {integrity: sha512-iwMNFsrAPjfedjKDv9AXPAV16PWIomP3qw/FfPaxkDVRbUls7BNdofBLzkQmqxqWh93WrawLwaqyXpJuAaiwJA==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [x64]
|
||||
os: [darwin]
|
||||
requiresBuild: true
|
||||
optional: true
|
||||
|
||||
/@next/swc-freebsd-x64/12.2.1:
|
||||
resolution: {integrity: sha512-SkAjp7B7aBxAsRVMZGiAp/qMkh65PLzYuLBTsBSu+4fxFuKF7MAEgaIUhvC8zzD58A+Y9yrY/3813bhtrwkcuA==}
|
||||
/@next/swc-freebsd-x64/12.2.0:
|
||||
resolution: {integrity: sha512-gRiAw8g3Akf6niTDLEm1Emfa7jXDjvaAj/crDO8hKASKA4Y1fS4kbi/tyWw5VtoFI4mUzRmCPmZ8eL0tBSG58A==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [x64]
|
||||
os: [freebsd]
|
||||
requiresBuild: true
|
||||
optional: true
|
||||
|
||||
/@next/swc-linux-arm-gnueabihf/12.2.1:
|
||||
resolution: {integrity: sha512-V7ov2LXrLWuYVH/syzrzpmwWumg5rCh0siwOPNCRzVkrpgP8WoIRNdeZ/NQIj0ng+kq7gDF1jib583Lk0wbDeQ==}
|
||||
/@next/swc-linux-arm-gnueabihf/12.2.0:
|
||||
resolution: {integrity: sha512-/TJZkxaIpeEwnXh6A40trgwd40C5+LJroLUOEQwMOJdavLl62PjCA6dGl1pgooWLCIb5YdBQ0EG4ylzvLwS2+Q==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [arm]
|
||||
os: [linux]
|
||||
requiresBuild: true
|
||||
optional: true
|
||||
|
||||
/@next/swc-linux-arm64-gnu/12.2.1:
|
||||
resolution: {integrity: sha512-HlnDQD3r4YqCj2gu6uo86oEM0ixBsyKLaPcZcGwWAD5mFG5R4zzTZG7BO2wJkGWmkzijHluE14dlTmfzc8jdEQ==}
|
||||
/@next/swc-linux-arm64-gnu/12.2.0:
|
||||
resolution: {integrity: sha512-++WAB4ElXCSOKG9H8r4ENF8EaV+w0QkrpjehmryFkQXmt5juVXz+nKDVlCRMwJU7A1O0Mie82XyEoOrf6Np1pA==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [arm64]
|
||||
os: [linux]
|
||||
requiresBuild: true
|
||||
optional: true
|
||||
|
||||
/@next/swc-linux-arm64-musl/12.2.1:
|
||||
resolution: {integrity: sha512-P8AkWd4RHbuF24ol3jk2akXpntcDI0gv5uD7eMpAOXb8W2A6y/sv0tKNSGUV3efSutOyu23jNn2EiTNxHgU4NQ==}
|
||||
/@next/swc-linux-arm64-musl/12.2.0:
|
||||
resolution: {integrity: sha512-XrqkHi/VglEn5zs2CYK6ofJGQySrd+Lr4YdmfJ7IhsCnMKkQY1ma9Hv5THwhZVof3e+6oFHrQ9bWrw9K4WTjFA==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [arm64]
|
||||
os: [linux]
|
||||
requiresBuild: true
|
||||
optional: true
|
||||
|
||||
/@next/swc-linux-x64-gnu/12.2.1:
|
||||
resolution: {integrity: sha512-ZbsM+rIMqK6xi3lovspzPJoIPre3LglKrCXKLkln7rD0uiymzfLhS2VCj8u4qRynz22iAzuI4mJNpZa3AsJFrA==}
|
||||
/@next/swc-linux-x64-gnu/12.2.0:
|
||||
resolution: {integrity: sha512-MyhHbAKVjpn065WzRbqpLu2krj4kHLi6RITQdD1ee+uxq9r2yg5Qe02l24NxKW+1/lkmpusl4Y5Lks7rBiJn4w==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [x64]
|
||||
os: [linux]
|
||||
requiresBuild: true
|
||||
optional: true
|
||||
|
||||
/@next/swc-linux-x64-musl/12.2.1:
|
||||
resolution: {integrity: sha512-JeATguMe37bviPwkIUjO7T3kcefMBQwJFLhkFTaJYGmPm12EsW1FtKcg87AI87xdGvfrHQKlM3phNaG/dkneTQ==}
|
||||
/@next/swc-linux-x64-musl/12.2.0:
|
||||
resolution: {integrity: sha512-Tz1tJZ5egE0S/UqCd5V6ZPJsdSzv/8aa7FkwFmIJ9neLS8/00za+OY5pq470iZQbPrkTwpKzmfTTIPRVD5iqDg==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [x64]
|
||||
os: [linux]
|
||||
requiresBuild: true
|
||||
optional: true
|
||||
|
||||
/@next/swc-win32-arm64-msvc/12.2.1:
|
||||
resolution: {integrity: sha512-8dal/MdrVshDKYBtloJw/RhJx140KUoRRYoRfpJ9oAdP8UXBdR0haKfg5EdOy98t8Q76apArxPsK7DfwoR1f3w==}
|
||||
/@next/swc-win32-arm64-msvc/12.2.0:
|
||||
resolution: {integrity: sha512-0iRO/CPMCdCYUzuH6wXLnsfJX1ykBX4emOOvH0qIgtiZM0nVYbF8lkEyY2ph4XcsurpinS+ziWuYCXVqrOSqiw==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [arm64]
|
||||
os: [win32]
|
||||
requiresBuild: true
|
||||
optional: true
|
||||
|
||||
/@next/swc-win32-ia32-msvc/12.2.1:
|
||||
resolution: {integrity: sha512-uSAoOBpCp4oxVD9gTY1f27hr9xNLEOCglxZPH1+FonHpM5n9Sp4H01uQHWE/Y26iHmJeUJAWxtRxEYylnO4U9A==}
|
||||
/@next/swc-win32-ia32-msvc/12.2.0:
|
||||
resolution: {integrity: sha512-8A26RJVcJHwIKm8xo/qk2ePRquJ6WCI2keV2qOW/Qm+ZXrPXHMIWPYABae/nKN243YFBNyPiHytjX37VrcpUhg==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [ia32]
|
||||
os: [win32]
|
||||
requiresBuild: true
|
||||
optional: true
|
||||
|
||||
/@next/swc-win32-x64-msvc/12.2.1:
|
||||
resolution: {integrity: sha512-gx4aLMAZAVjtShiCrUSszoxnzBWJWf09Lkey6mcc0jFZjbz4xkyDbp53V229DtOYTUL4t0IZJ0I7+ftQ5CYIjg==}
|
||||
/@next/swc-win32-x64-msvc/12.2.0:
|
||||
resolution: {integrity: sha512-OI14ozFLThEV3ey6jE47zrzSTV/6eIMsvbwozo+XfdWqOPwQ7X00YkRx4GVMKMC0rM44oGS2gmwMKYpe4EblnA==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [x64]
|
||||
os: [win32]
|
||||
@ -3504,7 +3504,7 @@ packages:
|
||||
engines: {node: '>=12'}
|
||||
dev: false
|
||||
|
||||
/eslint-config-next/12.0.9_apni7ptlphdqoi2rt7ovvz6r34:
|
||||
/eslint-config-next/12.0.9_axmrhsq5bdxho664wwmmqxhkji:
|
||||
resolution: {integrity: sha512-mhpFUsdctLw9PPOVF6S45n7uEzeRth9Xub6CbsKG8Bmr4QFTs1vhbFjp3cjdFIxjMQNuY8hcu66XFlvBB768Iw==}
|
||||
peerDependencies:
|
||||
eslint: ^7.23.0 || ^8.0.0
|
||||
@ -3524,7 +3524,7 @@ packages:
|
||||
eslint-plugin-jsx-a11y: 6.6.1_eslint@7.32.0
|
||||
eslint-plugin-react: 7.31.8_eslint@7.32.0
|
||||
eslint-plugin-react-hooks: 4.6.0_eslint@7.32.0
|
||||
next: 12.2.1_sfoxds7t5ydpegc3knd667wn6m
|
||||
next: 12.2.0_sfoxds7t5ydpegc3knd667wn6m
|
||||
typescript: 4.8.4
|
||||
transitivePeerDependencies:
|
||||
- eslint-import-resolver-webpack
|
||||
@ -5748,20 +5748,20 @@ packages:
|
||||
- supports-color
|
||||
dev: true
|
||||
|
||||
/next-themes/0.0.14_hd4ftj27eynthkwnbwxec6joby:
|
||||
/next-themes/0.0.14_nsrodebypp3mcf7ihyfjqmpudu:
|
||||
resolution: {integrity: sha512-x09OaM+wg3SIlEjOv8B21aw/E36jxTtfW3Dm/DPwMsSMluGt7twe1LigA6nc+mXP1u0qu9MxBaIrPPH6UTiKnA==}
|
||||
peerDependencies:
|
||||
next: '*'
|
||||
react: '*'
|
||||
react-dom: '*'
|
||||
dependencies:
|
||||
next: 12.2.1_sfoxds7t5ydpegc3knd667wn6m
|
||||
next: 12.2.0_sfoxds7t5ydpegc3knd667wn6m
|
||||
react: 17.0.2
|
||||
react-dom: 17.0.2_react@17.0.2
|
||||
dev: false
|
||||
|
||||
/next/12.2.1_sfoxds7t5ydpegc3knd667wn6m:
|
||||
resolution: {integrity: sha512-090KB5CZRlLG/GWxb8tA1ZFwqL8OfpUtH4mXA7POuisa6NL5ihiAZhfk5nRBdPHvkXuSt0n7zQaVym6SrT3Wiw==}
|
||||
/next/12.2.0_sfoxds7t5ydpegc3knd667wn6m:
|
||||
resolution: {integrity: sha512-B4j7D3SHYopLYx6/Ark0fenwIar9tEaZZFAaxmKjgcMMexhVJzB3jt7X+6wcdXPPMeUD6r09weUtnDpjox/vIA==}
|
||||
engines: {node: '>=12.22.0'}
|
||||
hasBin: true
|
||||
peerDependencies:
|
||||
@ -5778,7 +5778,7 @@ packages:
|
||||
sass:
|
||||
optional: true
|
||||
dependencies:
|
||||
'@next/env': 12.2.1
|
||||
'@next/env': 12.2.0
|
||||
'@swc/helpers': 0.4.2
|
||||
caniuse-lite: 1.0.30001418
|
||||
postcss: 8.4.5
|
||||
@ -5787,19 +5787,19 @@ packages:
|
||||
styled-jsx: 5.0.2_react@17.0.2
|
||||
use-sync-external-store: 1.1.0_react@17.0.2
|
||||
optionalDependencies:
|
||||
'@next/swc-android-arm-eabi': 12.2.1
|
||||
'@next/swc-android-arm64': 12.2.1
|
||||
'@next/swc-darwin-arm64': 12.2.1
|
||||
'@next/swc-darwin-x64': 12.2.1
|
||||
'@next/swc-freebsd-x64': 12.2.1
|
||||
'@next/swc-linux-arm-gnueabihf': 12.2.1
|
||||
'@next/swc-linux-arm64-gnu': 12.2.1
|
||||
'@next/swc-linux-arm64-musl': 12.2.1
|
||||
'@next/swc-linux-x64-gnu': 12.2.1
|
||||
'@next/swc-linux-x64-musl': 12.2.1
|
||||
'@next/swc-win32-arm64-msvc': 12.2.1
|
||||
'@next/swc-win32-ia32-msvc': 12.2.1
|
||||
'@next/swc-win32-x64-msvc': 12.2.1
|
||||
'@next/swc-android-arm-eabi': 12.2.0
|
||||
'@next/swc-android-arm64': 12.2.0
|
||||
'@next/swc-darwin-arm64': 12.2.0
|
||||
'@next/swc-darwin-x64': 12.2.0
|
||||
'@next/swc-freebsd-x64': 12.2.0
|
||||
'@next/swc-linux-arm-gnueabihf': 12.2.0
|
||||
'@next/swc-linux-arm64-gnu': 12.2.0
|
||||
'@next/swc-linux-arm64-musl': 12.2.0
|
||||
'@next/swc-linux-x64-gnu': 12.2.0
|
||||
'@next/swc-linux-x64-musl': 12.2.0
|
||||
'@next/swc-win32-arm64-msvc': 12.2.0
|
||||
'@next/swc-win32-ia32-msvc': 12.2.0
|
||||
'@next/swc-win32-x64-msvc': 12.2.0
|
||||
transitivePeerDependencies:
|
||||
- '@babel/core'
|
||||
- babel-plugin-macros
|
||||
|
Loading…
Reference in New Issue
Block a user