- asdf: elixir, erlang version manager
- elixir: Elixir 1.15.8 (OTP 26)
- erlang: Erlang 26 설치시 참고: asdf-vm/asdf-erlang#319 (comment)
apps/backend -> 유기한놈 apps/supercontact -> 진짜
설치후에 클론 받고것
mix deps.get
# scylla 로컬에 띄우기
docker run --name scylla -d \\n -v ~/scylla/data:/var/lib/scylla \\n -v ~/scylla/log:/var/log/scylla \\n -p 9042:9042 \\n -p 10000:10000 \\n scylladb/scylla
docker exec -it scylla cqlsh
CREATE KEYSPACE super_contact WITH replication = {'class': 'NetworkTopologyStrategy', 'replication_factor': 1};
# mix.exs 에 scyllaDB 와 postgres 관련 auth 수정 후
mix ecto.create # 이거하면 RDB 생성
# scyllaDB keyspace는 직접 만들어야함
# postgres라면
CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
mix ecto.migrate
# 개인적으로 사용하는 방식 터미널 3개 띄우고, 일단은 개발시에 이거 3개 띄워서 쓰는중 나중에 배포 환경에 맞춰서 libcluster 정리 할
iex --name [email protected] -S mix
iex --name [email protected] -S mix
iex --name [email protected] -S mixmix ecto.create # 최초 한번만 하면 DB 생김
mix ecto.gen.migration -r SuperContact.Repo create_some_table # 새로운 마이그레이션 파일 생성
mix ecto.migrate # RDB 마이그레이션 파일 기반으로 마이그레이션됨mix scylla.gen.migration migration_file_name # 마이그레이션 파일 생성됨, cql로 쿼리 직접 작성하면 됨
mix scylla.migrate # 마이그레이션 파일 기반으로 마이그레이션됨 (마이그레이션 버저닝은 위의 RDB를 통해)