diff --git a/Dockerfile b/Dockerfile index f243864..f417e4b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,11 +1,10 @@ -FROM node:18 as builder +FROM node:20-alpine AS base + +FROM base AS builder COPY / /workspace WORKDIR /workspace -ENV TZ Asia/Seoul -EXPOSE 3000 - ARG NEXT_PUBLIC_SUPABASE_URL ARG NEXT_PUBLIC_SUPABASE_ANON_KEY @@ -13,10 +12,12 @@ RUN yarn && yarn build USER node -FROM node:18 as runner +FROM base AS runner COPY --chown=node:node --from=builder /workspace/ ./ ENV NODE_ENV production +ENV TZ Asia/Seoul +EXPOSE 3000 CMD ["yarn", "start"] diff --git a/package.json b/package.json index 323b0b0..a2bc5a5 100644 --- a/package.json +++ b/package.json @@ -12,6 +12,7 @@ "license": "MIT", "dependencies": { "@chakra-ui/react": "^2.2.1", + "@emotion/css": "^11.11.2", "@emotion/react": "^11.1.1", "@emotion/styled": "^11.0.0", "@fortawesome/fontawesome-svg-core": "^6.3.0", @@ -19,11 +20,11 @@ "@fortawesome/free-regular-svg-icons": "^6.3.0", "@fortawesome/free-solid-svg-icons": "^6.3.0", "@fortawesome/react-fontawesome": "^0.2.0", - "@supabase/auth-helpers-nextjs": "^0.7.2", - "@supabase/auth-helpers-react": "^0.4.0", - "@supabase/supabase-js": "^2.26.0", + "@supabase/auth-helpers-nextjs": "^0.9.0", + "@supabase/auth-helpers-react": "^0.4.2", + "@supabase/supabase-js": "^2.39.7", "framer-motion": "^6.3.12", - "next": "^12.2.4", + "next": "^14.1.0", "react": "^18.2.0", "react-beautiful-dnd": "^13.1.0", "react-dom": "^18.2.0", @@ -32,10 +33,10 @@ "react-markdown": "^8.0.5" }, "devDependencies": { - "@types/node": "^18.0.3", - "@types/react": "^18.0.15", + "@types/node": "^20.11.24", + "@types/react": "^18.2.61", "@types/react-beautiful-dnd": "^13.1.2", - "@types/react-dom": "^18.0.6", + "@types/react-dom": "^18.2.19", "@typescript-eslint/eslint-plugin": "^5.30.6", "@typescript-eslint/parser": "^5.30.6", "eslint": "^8.19.0", @@ -48,7 +49,7 @@ "eslint-plugin-react": "^7.30.1", "eslint-plugin-react-hooks": "^4.6.0", "prettier": "^2.7.1", - "typescript": "4.3.2" + "typescript": "5.3.3" }, "browserslist": { "production": [ diff --git a/src/components/Footer/index.tsx b/src/components/Footer/index.tsx index 3e6ea62..5768f16 100644 --- a/src/components/Footer/index.tsx +++ b/src/components/Footer/index.tsx @@ -1,4 +1,5 @@ import React from 'react'; +import { css } from '@emotion/css'; import ContentBlock from '../ContentBlock'; const Footer: React.FC = () => { @@ -17,6 +18,13 @@ const Footer: React.FC = () => { {' '} 에서 코드를 확인할 수 있습니다.

+

+ Copyright 2022-{new Date().getFullYear()}. Daegyeom Ha. All rights reserved. +

); }; diff --git a/src/pages/_app.tsx b/src/pages/_app.tsx index 2efb5e1..2f79da1 100644 --- a/src/pages/_app.tsx +++ b/src/pages/_app.tsx @@ -24,7 +24,8 @@ const App = ({ return ( <> - Daegyeom Ha | resume + 하대겸 | Daegyeom Ha +