네, 수동 설치를 시도해 보세요
수동 설치 가이드 (오버라이드 버전)
이 가이드는 실행 중인 Discourse 컨테이너 내부에서 discourse-moetwemoji-twemoji-fakepng-override 플러그인을 수동으로 설치하고 적용하는 방법을 설명하며, 오버라이드 버전의 경우 완전한 리빌드가 필수적이지 않은 이유를 명확히 합니다.
1. Discourse 컨테이너 진입
서버에서 Discourse Docker 디렉터리(보통 /var/discourse)로 이동하여 실행 중인 컨테이너에 진입합니다:
cd /var/discourse
./launcher enter app
이제 컨테이너 셸 안에 있어야 합니다.
2. 오버라이드 플러그인 수동 클론
플러그인 디렉터리로 이동하여 저장소를 클론합니다:
cd /var/www/discourse/plugins
git clone https://github.com/constansino/discourse-moetwemoji-twemoji-fakepng-override.git
디렉터리가 존재하는지 확인합니다:
ls discourse-moetwemoji-twemoji-fakepng-override
3. 이모지 오버라이드 적용
Discourse 루트 디렉터리로 돌아갑니다:
su - discourse
cd /var/www/discourse
현재 상태를 확인합니다 (선택 사항이지만 권장됨):
RAILS_ENV=production bundle exec rake moetwemoji_twemoji:status
오버라이드를 적용합니다:
RAILS_ENV=production bundle exec rake moetwemoji_twemoji:apply
명령이 오류 없이 완료되면, Twemoji PNG 파일이 Moetwemoji로 대체되었음을 의미합니다.
4. 리빌드 관련 중요 사항 (영속성)
오버라이드를 작동시키기 위해 리빌드는 필요하지 않습니다
이 오버라이드 버전은 실행 중인 컨테이너 내 파일을 직접 교체하는 방식으로 작동합니다.
따라서:
그러나 변경 사항은 영속적이지 않습니다
이 작업이 컨테이너 파일 시스템 내부에서 수행되기 때문에:
변경 사항이 삭제되고 이모지 오버라이드가 사라집니다.
리빌드 간 영속성이 필요하다면, app.yml 후크를 통해 플러그인을 설치하고 올바르게 리빌드해야 합니다.
5. CDN 및 브라우저 캐시 삭제 (매우 중요)
오버라이드를 적용한 후에도 캐싱으로 인해 이모지가 변경되지 않은 것처럼 보일 수 있습니다.
5.1 CDN 캐시 삭제 (예: Cloudflare)
Cloudflare와 같은 CDN을 사용 중인 경우:
-
다음에 대한 캐시를 정화(Purge)합니다:
-
/images/emoji/*
-
또는 필요 시 전체 캐시 정화 수행
그렇지 않으면, 이전 Twemoji PNG 파일이 계속 서빙될 수 있습니다.
5.2 브라우저 캐시 삭제
클라이언트 측에서:
CDN과 브라우저 캐시가 모두 삭제될 때까지 이모지 변경 사항이 표시되지 않을 수 있습니다.
6. 요약