비어 있던 운영 플러그인 경로를 전용 서비스 원본으로 복구했다. 음성 입장 안내와 주변 메뉴 및 관리자 번역을 실제 화면에서 확인했다. 관리자 주소용 내부 이름을 보존하고 보드 메뉴 두 곳의 제목을 복구했다. 검사: Ruby 문법과 YAML 11개 통과. 활성 번역 6004개와 음성 번역 561개 누락 0개. 일반 화면과 관리자 번역 및 보드 자산의 제공 해시를 확인했다. PC와 390픽셀 모바일 안내창 및 관리자 메뉴 주소를 확인했다. 운영: app 컨테이너만 갱신. DB 구조 변경과 데이터 이전 없음. 백업: /var/discourse/shared/standalone/backups/forum-korean-20261015-1150 설정 백업은 별도 비밀 디렉터리의 권한 600 파일로 보관했다. 제한: DB 복원 시험과 다음 컨테이너 재생성은 이번 검사에 포함하지 않았다. Trilium: Ubuntu 서버 운영 아래 Discourse 한국어 배포에 기록했다.
80 lines
9.2 KiB
Plaintext
80 lines
9.2 KiB
Plaintext
Discourse 한국어 보완 수정 기록
|
|
|
|
[2026-09-20] Discourse 한국어 화면 보완과 회귀 검사
|
|
- 작업 대상: https://forum.itosm.co.kr
|
|
- 변경 이유: 최신 Discourse 코어와 Chat 및 Voice 플러그인에서 한국어가 누락된 사용자 화면과 관리자 화면 문구를 정리했다.
|
|
- 변경 내용: 한국어 재정의 182개를 저장했다. 기본 음성 대화방 이름과 설명을 한국어로 바꿨다. 관리자 그룹 소개 문구도 한국어로 저장했다.
|
|
- DB 변경: `translation_overrides`와 음성 대화방 및 관리자 그룹 소개 데이터만 변경했다. DB 구조와 데이터 이전은 없다.
|
|
- 백업: `itosm-2026-09-20-093718-v20260915204557.tar.gz` 7.0 MB. 업로드 파일을 포함한 Discourse 전체 백업이다.
|
|
- 검사: 데스크톱 최신 글과 관리자 대시보드와 채팅 및 음성 메뉴를 확인했다. 390×844 모바일 최신 글과 관리자 대시보드를 확인했다. 비로그인 로그인 화면과 비밀번호 재설정 창을 확인했다.
|
|
- 운영 반영: 운영 DB의 공식 번역 재정의 기능으로 즉시 반영했다. 컨테이너 재시작은 하지 않았다. aaPanel의 Docker 컨테이너와 역방향 프록시와 SSL 연결은 유지했다.
|
|
- 보존 사항: `/var/discourse/launcher`와 `/var/discourse/containers/app.yml`과 SMTP와 로그인 설정은 수정하지 않았다. 비밀번호 재설정 메일은 보내지 않았다.
|
|
- 남은 제한: 기본 안내 글 제목과 제품 고유 표기 일부는 콘텐츠와 고유 이름으로 남아 있다.
|
|
|
|
|
|
## 2026-09-20 Discourse 관리자 한글화 확대와 Yarn 실행 환경 정비
|
|
- Node.js 22.23.2와 Corepack 0.34.6을 사용자 전용 경로에 설치했다. 공식 체크섬 확인 후 저장소 지정 버전인 Yarn 4.0.0-rc.40을 활성화했다.
|
|
- `node`, `npm`, `npx`, `corepack`, `yarn` 명령 경로와 버전을 확인했다. `yarn lint-staged`도 정상 실행됐다.
|
|
- 관리자 대시보드와 탐색 메뉴와 플러그인 안내의 누락 번역을 보완했다. 한국어 번역 덮어쓰기는 182개에서 234개로 늘었다.
|
|
- 실제 관리자 화면에서 새 소식과 고급 메뉴와 신뢰 레벨 변화와 검색 요약과 릴리스 변경 수를 확인했다.
|
|
- 플러그인 이름과 설명 일부는 플러그인 코드 메타데이터에 영문으로 고정돼 있어 번역 덮어쓰기 대상이 아니다. 정식 배포판 반영 때 플러그인별 변경으로 분리한다.
|
|
- 데이터베이스 구조와 일반 콘텐츠 데이터는 변경하지 않았다. 컨테이너와 서비스는 재시작하지 않았다.
|
|
- 복구 기준: `itosm-2026-09-20-093718-v20260915204557.tar.gz`
|
|
- Discourse 공식 번역 경로인 `translate.discourse.org`와 Crowdin 반영 절차를 확인했다. 공통 누락 번역과 플러그인 코드 변경을 나눠 공식 기여용으로 정리한다.
|
|
|
|
|
|
## 2026-09-20 공식 기여자 표기 확정
|
|
- Discourse 공식 번역과 코드 기여의 제출자를 `이창현 (Lee Chang Hyun)`으로 정했다.
|
|
- 제출 및 커밋 이메일은 `syskiller@naver.com`으로 정했다.
|
|
- 저장소 로컬 Git 작성자 설정에 반영하고 값을 다시 확인했다.
|
|
|
|
|
|
## 2026-09-25 사용자 화면 한글화 4차 진행과 운영 반영
|
|
- 작업 대상: https://forum.itosm.co.kr
|
|
- 변경 이유: 사용자 화면과 채팅과 음성 대화와 안내 창에 남은 영문 문구를 자연스러운 한국어로 바꾸기 위해 진행했다.
|
|
- 변경 내용: Discourse 코어의 일반 화면 및 시스템 번역 750개를 네 차례로 나눠 보완했다. 채팅과 음성 대화 번역과 신고 창과 검색과 글 작성기와 404 안내와 태그 입력의 누락 문구를 함께 정리했다. 영어 운영 게시물 3건도 한국어로 바꿨다.
|
|
- 데이터 변경: 게시물 3건의 제목과 본문을 수정했다. 데이터베이스 구조 변경과 데이터 이전은 없다.
|
|
- 운영 반영: `itosm-admin-korean` 플러그인의 번역 파일을 갱신했다. `app` 컨테이너만 다시 시작했다.
|
|
- 검사: YAML 구조와 번역 후보 수를 확인했다. 앞선 묶음은 실제 화면에서 신고 창과 검색과 글 작성기와 오류 안내와 태그 입력을 확인했다. 포럼의 HTTP 200 응답을 확인했다.
|
|
- 남은 분량: 활성 번역 기준 총 8,498개다. 일반 화면 및 시스템 6,385개와 관리자 화면 2,113개가 남아 있다.
|
|
- 제한 사항: 4차 300개 묶음은 화면별 문맥 검수가 남아 있다. 다음 묶음부터 300개 단위로 번역과 문맥 검수를 이어 간다.
|
|
- SSH 보호: 현재 접속 출발지를 Fail2ban SSH 차단 제외 목록에 반영하고 새 SSH 연결을 확인했다. 실제 주소는 기록하지 않았다.
|
|
- 백업: 사용자 지시에 따라 이번 기록 시점에는 만들지 않았다.
|
|
|
|
|
|
## 2026-09-27 한국어 번역 완료와 Gitea 배포 준비
|
|
- 작업 대상: https://forum.itosm.co.kr
|
|
- 변경 이유: 일반 화면과 관리자 화면 및 활성 플러그인에 남은 번역을 마무리하고 Gitea 저장소에서 다시 배포할 수 있게 정리했다.
|
|
- 변경 내용: 활성 번역 누락을 0개로 정리했다. 보드 설정에 노출되던 `Boards enabled`를 `보드 사용`으로 바꿨다. 기능별 검수 원본과 보드 화면 패치 원본을 저장소에 포함했다.
|
|
- 배포 기능: `yarn test`와 `yarn deploy` 및 `yarn verify:deployment` 명령을 추가했다. 배포 명령은 검사 통과 후 실행 파일만 운영 플러그인 경로에 복사하고 `app` 컨테이너만 다시 시작한 뒤 HTTP 200 응답을 확인한다.
|
|
- 검사: 활성 플러그인 29개의 번역 키 6,005개 중 누락 0개를 확인했다. 전체 활성 일반 화면과 관리자 화면도 누락 0개다. 원문 동일 항목 216개는 브랜드명과 형식 문자열 및 주소 예시로 확인했다.
|
|
- 화면 확인: 업무 흐름과 보드와 RSS 가져오기와 외부 채팅 연동 및 GitHub 연동과 자동화 화면을 PC에서 확인했다. 일반 최신 글과 설치된 플러그인 화면은 PC와 390픽셀 모바일에서 확인했다. 가로 넘침과 브라우저 오류는 없었다.
|
|
- 데이터 변경: 데이터베이스 구조 변경과 데이터 이전은 없다.
|
|
- 운영 반영: 운영 `app` 컨테이너만 다시 시작했다. 포럼 HTTP 200 응답을 확인했다.
|
|
- 백업: 사용자 요청이 없어 진행하지 않았다.
|
|
|
|
|
|
## 2026-10-04 ITOSM 피아노 학습실 포럼 구성
|
|
- 작업 대상: https://forum.itosm.co.kr 및 https://learn.itosm.co.kr
|
|
- 변경 이유: 피아노 학습 서비스의 사용법과 연습 자료 및 질문과 오류를 목적별로 나눠 관리하기 위해 진행했다.
|
|
- 변경 내용: `ITOSM 피아노 학습실` 상위 카테고리와 네 개의 하위 카테고리를 만들었다. 서비스 소개와 처음 시작하는 방법 및 자료 공유와 난이도별 연습 정보와 질문 및 오류 안내 글을 등록했다.
|
|
- 저작권 안내: MIDI와 악보 및 연습 자료를 공유할 때 제작자와 원본 출처와 저작권 상태 및 이용 허가와 재배포 가능 여부를 적도록 글쓰기 양식과 고정 안내에 반영했다.
|
|
- 권한: 모든 새 카테고리와 안내 글은 비회원이 볼 수 있다. 회원은 새 글을 작성할 수 있다.
|
|
- 검사: 서비스와 포럼 및 안내 글 여섯 개의 HTTP 200 응답을 확인했다. PC 화면에서 카테고리와 글 목록을 확인했다. 390×844 모바일 화면에서 가로 넘침이 없고 저작권 안내가 표시되는지 확인했다.
|
|
- 이름 정리: 정식 이름을 `ITOSM 피아노 학습실`로 통일했다. 잘못 사용한 임시 이름은 카테고리와 제목과 본문 및 글쓰기 양식에서 제거했다. `NoteRain` 표기도 사용하지 않았다.
|
|
- 데이터 변경: 카테고리와 주제 및 게시물과 글쓰기 양식만 추가하거나 수정했다. 데이터베이스 구조 변경과 데이터 이전은 없다.
|
|
- 운영 반영: 운영 `app` 컨테이너의 Rails 작업으로 즉시 반영했다. 컨테이너는 다시 시작하지 않았다.
|
|
- 보존 사항: 기존 포럼 설정과 카테고리와 게시물은 삭제하지 않았다.
|
|
- 백업: 사용자 요청이 없어 진행하지 않았다.
|
|
- 남은 제한: 실제 MIDI 장치를 이용한 서비스 동작 검사는 별도 장치 검증 작업으로 남는다.
|
|
|
|
## 2026-10-15 운영 서버 한국어 번역 복구
|
|
|
|
- 이전된 서버의 한국어 보완 플러그인 경로가 비어 있음을 확인했다. 전용 원본을 복구하고 포럼 컨테이너만 재시작했다.
|
|
- 음성 대화방 입장 안내와 주변 메뉴 및 관리자 번역을 복구했다. 활성 플러그인 고유 번역 6,004개와 음성 기능 561개를 검사했다. 누락은 0개다.
|
|
- 관리자 주소에 쓰이는 내부 플러그인 이름은 보존하도록 수정했다. 보드 메뉴 두 곳의 제목도 복구했다.
|
|
- 실제 웹 번역과 보드 자산 해시 대조를 배포 검사에 추가했다. PC와 모바일의 안내창 및 관리자 메뉴 주소를 확인했다.
|
|
- DB 구조 변경과 데이터 이전은 없다. 기존 글꼴과 게시물을 보존했다.
|
|
- 백업: `/var/discourse/shared/standalone/backups/forum-korean-20261015-1150`
|
|
- 상세 범위와 복구 방법: [한국어 복구 기록](docs/2026-10-15-localization-recovery.md)
|