Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Node.js
node_modules
npm-debug.log
*.log
yarn-error.log

# Git
.git
.gitignore

# OS 및 IDE 특정 파일
.DS_Store
Thumbs.db
.idea/
.vscode/
*.swp

# 민감한 정보 또는 로컬 환경 파일
.env
*.env.local
15 changes: 0 additions & 15 deletions .eslintrc.js

This file was deleted.

55 changes: 55 additions & 0 deletions .github/copilot-instructions.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# GitHub Copilot Instructions for Docker Korea Documentation

## Project Overview

This is a Korean translation project for Docker documentation. This project aims to make Docker documentation accessible to Korean speakers by providing translated content.

## Guidelines

### Translation

- Maintain consistency with existing translations.
- Follow the style guide in SYTLE_GUIDE.md.
- When translating technical terms, keep the original term in parentheses on first mention.
- Be respectful of Korean language conventions, using formal language style.

### Code

- All code examples should remain in English.
- Code comments may be translated to Korean.
- Inline code blocks using backticks (`) should remain untouched.

### Markdown

- Preserve the original markdown structure.
- Don't change image paths or links unless specifically required.
- Maintain heading hierarchy (h1, h2, h3, etc.).

### File Structure

- Keep the same file structure as the original.
- Don't move or rename files without explicit instruction.

### Tailwind CSS

- When adding new styles, use Tailwind CSS classes when possible.
- Follow the existing design patterns in the project.

### TypeScript

- Follow TypeScript best practices.
- Ensure proper typing for all functions and variables.

### Commits

- Write commit messages in Korean, prefixed with [translate] or [fix] or [ui] as appropriate.
- Keep commits focused on specific changes.

### Runtime

- Code should work in modern browsers.
- Consider mobile responsiveness.

### Additional Guidelines

- Codes are written in English, but answers are in Korean.
37 changes: 37 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
name: CI

on:
pull_request:
branches:
- "*"

jobs:
build-test-lint-typecheck:
runs-on: ubuntu-latest
steps:
- name: 코드 체크아웃
uses: actions/checkout@v4

- name: Node.js 설정
uses: actions/setup-node@v4
with:
node-version: 22
cache: 'npm'

- name: 의존성 설치
run: npm ci

- name: Vite 프로젝트 빌드
run: npm run build

- name: 린트 체크
run: npm run lint:check

- name: 프리티어 체크
run: npm run prettier:check

- name: 타입 체크
run: npm run type:check || echo "No type:check script"

- name: 테스트
run: npm run test || echo "No test script defined"
4 changes: 2 additions & 2 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,11 +19,11 @@ jobs:
- name: Node.js 설정
uses: actions/setup-node@v4
with:
node-version: 18
node-version: 22
cache: 'npm'

- name: 의존성 설치
run: npm install
run: npm ci

- name: Vite 프로젝트 빌드
run: npm run build
Expand Down
19 changes: 19 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Node.js 23 버전의 경량 Alpine Linux 이미지를 사용합니다.
FROM node:23-alpine

# 작업 디렉토리를 /app으로 설정합니다.
WORKDIR /app

# 의존성 설치를 위해 패키지 매니페스트 파일을 복사합니다.
COPY package.json package-lock.json* ./

# npm ci를 사용하여 빠르고 안전하게 의존성을 설치합니다.
RUN npm ci

# 소스 코드는 볼륨 마운트로 연결하므로 COPY . . 는 필요 없음

# Vite 개발 서버 기본 포트 (참고용, 실제 포트 매핑은 docker-compose.yml에서 관리)
EXPOSE 5173

# 컨테이너 시작 시 실행될 명령어
CMD ["npm", "run", "dev", "--", "--host"]
14 changes: 14 additions & 0 deletions docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
version: "1.0.0"
services:
web:
container_name: docker-ko-dev
build:
context: .
dockerfile: Dockerfile
ports:
- "5173:5173"
volumes:
- ./:/app
- /app/node_modules
environment:
- NODE_ENV=development
11 changes: 11 additions & 0 deletions eslint.config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
import js from "@eslint/js";
import globals from "globals";
import tseslint from "typescript-eslint";
import { defineConfig, globalIgnores } from "eslint/config";


export default defineConfig([globalIgnores(["dist/**"]),
{ files: ["src/*.{js,mjs,cjs,ts,mts,cts}"], plugins: { js }, extends: ["js/recommended"] },
{ files: ["src/*.{js,mjs,cjs,ts,mts,cts}"], languageOptions: { globals: globals.browser } },
tseslint.configs.recommended,
]);
1 change: 1 addition & 0 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
crossorigin="anonymous"
></script>
<script type="module" src="./src/scripts/main.ts"></script>
<!-- Application Insights 스크립트는 main.ts에서 운영 환경에서만 동적으로 삽입됩니다. -->
<link
rel="icon"
type="image/svg+xml"
Expand Down
Loading