infisical을 0.4.2버전에서 1.0.8버전으로 업그레이드 하려고 하는데 MongoDB를 더 이상 지원하지 않고 PostgresSQL만 지원한다. 기존 MongoDB에 있던 데이터들을 PostgreSQL로 마이그레이션하자.
https://infisical.com/docs/self-hosting/guides/mongo-to-postgres → 공식 마이그레이션 방법인데 그대로 따라하면 잘 안됨
https://infisical.com/blog/postgresql-migration-technical
mogodb 설치방법
brew tap mongodb/brew
brew install [email protected]
postres 설치방법
brew install postgresql@16
아래와 같이 작성된 docker-compose.yaml 파일을 만든다.
version: '3.1'
services:
mongodb:
image: mongo
restart: always
environment:
MONGO_INITDB_ROOT_USERNAME: root
MONGO_INITDB_ROOT_PASSWORD: example
ports:
- "27017:27017"
volumes:
- mongodb_data:/data/db
postgres:
image: postgres
restart: always
environment:
POSTGRES_USER: root
POSTGRES_PASSWORD: example
ports:
- "5432:5432"
volumes:
- postgres_data:/var/lib/postgresql/data
volumes:
mongodb_data:
postgres_data:
해당 파일이 있는 곳에서 아래 명령어 실행
docker-compose up -d
MongoDB 데이터를 로컬 머신에 덤프하기
mongodb://<id>:<password>@<ip>:port 형식이어야 함mongodump --uri=<your_mongo_prod_uri> --archive="mongodump-db" --db=<db name> --excludeCollection=auditlogs
이 데이터를 로컬 MongoDB 인스턴스로 복원. 아래 명령어 그대로 실행하면 됨