부모 티켓
2개 티켓

백로그

0
티켓 없음

할 일

0
티켓 없음

진행 중

0
티켓 없음

리뷰

0
티켓 없음

완료 (30일)

2
긴급 367f6db9
서브 티켓 [P0-SETUP] Rails 프로젝트 초기화 + Docker 환경

Rails 8.1.2 프로젝트 생성 + Gemfile + UUID PK + Tailwind v4 + CI

## 작업 내용 기존 디렉토리(`/home/daniel/dev/logbile2.0.0`)에 Rails 8.1.2 프로젝트를 생성하고 기본 설정을 완료합니다. ### 1단계: Rails new ```bash cd /home/daniel/dev/logbile2.0.0 rails new . --database=sqlite3 --asset-pipeline=propshaft --javascript=importmap --force --skip-jbuilder ``` - `--force`: 기존 파일(README.md 등) 덮어쓰기 허용 - 단, CLAUDE.md, docs/, memory/, templates/는 보존되어야 함 (rails new가 건드리지 않는 경로) ### 2단계: Gemfile 추가 gems ```ruby # 인증 gem "devise" gem "omniauth" gem "omniauth-google-oauth2" gem "omniauth-kakao", github: "nicholasngai/omniauth-kakao" gem "omniauth-rails_csrf_protection" # CSS gem "tailwindcss-rails" # AI gem "ruby-openai" # 기타 gem "solid_queue" gem "solid_cable" gem "solid_cache" ``` `bundle install` 실행 ### 3단계: UUID PK 기본 설정 `config/initializers/generators.rb`: ```ruby Rails.application.config.generators do |g| g.orm :active_record, primary_key_type: :uuid end ``` `app/models/application_record.rb`: ```ruby class ApplicationRecord < ActiveRecord::Base primary_abstract_class self.implicit_order_column = "created_at" end ``` ### 4단계: Tailwind CSS v4 설치 ```bash rails tailwindcss:install ``` - templates/tailwind.config.js 참고하여 설정 적용 ### 5단계: CI 스크립트 - templates/bin/ci → bin/ci 복사 - config/ci.rb → config/ci.rb 복사 (이미 존재) - 실행 권한 부여: `chmod +x bin/ci` ### 6단계: 기본 파셜 복사 - templates/app/views/shared/*.html.erb → app/views/shared/ 복사 ### 7단계: 검증 - `rails db:prepare` 실행 - `rails s` 동작 확인 (포트 지정) - 테스트 실행: `rails test` ## 완료 기준 - rails s로 앱 기동 성공 - UUID PK 제너레이터 설정 완료 - Tailwind CSS v4 동작 - bundle install 성공 - bin/ci 스크립트 존재

R
rails-setup
9 days
높음 97aaa952
서브 티켓 [P0-SETUP] Rails 프로젝트 초기화 + Docker 환경

Docker Compose 개발환경 + Kamal 2.10.1 배포 설정

## 작업 내용 Rails 프로젝트의 Docker 개발 환경과 Kamal 배포 설정을 구성합니다. ### 주의: rails-setup 에이전트가 먼저 Rails 프로젝트를 생성해야 합니다. TaskList에서 rails-setup의 태스크가 완료되었는지 확인 후 작업을 시작하세요. ### 1단계: Dockerfile 확인/수정 - Rails 8.1.2가 생성한 기본 Dockerfile 활용 - 멀티스테이지 빌드 확인 - 필요시 수정 (SQLite3 + Tailwind 빌드 지원) ### 2단계: Docker Compose (개발용) `docker-compose.yml` 또는 `compose.yaml` 생성: ```yaml services: web: build: . ports: - "3000:3000" volumes: - .:/rails - bundle:/usr/local/bundle environment: - RAILS_ENV=development command: bin/rails server -b 0.0.0.0 css: build: . volumes: - .:/rails command: bin/rails tailwindcss:watch volumes: bundle: ``` - WSL2 환경 고려 (파일 시스템 성능) ### 3단계: Kamal 배포 설정 `config/deploy.yml`: ```yaml service: logbible image: logbible servers: web: hosts: - 167.172.82.126 registry: server: ghcr.io username: - KAMAL_REGISTRY_USERNAME password: - KAMAL_REGISTRY_PASSWORD builder: arch: amd64 env: secret: - RAILS_MASTER_KEY - GOOGLE_CLIENT_ID - GOOGLE_CLIENT_SECRET - KAKAO_CLIENT_ID - KAKAO_CLIENT_SECRET ``` - `.kamal/secrets` 파일 템플릿 생성 (.gitignore에 추가) ### 4단계: .dockerignore 확인 - 불필요한 파일 제외 (node_modules, .git, tmp, log 등) ### 5단계: 검증 - `docker compose build` 성공 - `docker compose up` 으로 앱 기동 - Kamal 설정 파일 구문 검증 ## 완료 기준 - Docker Compose로 개발 환경 구동 가능 - Kamal deploy 설정 파일 존재 - .dockerignore 적절히 설정 - .kamal/secrets 템플릿 존재

D
devops
9 days