woogieReal / MDGround3

3 stars 0 forks source link

[개발환경설정] 도커 컨테이너 밖에서 flyway 명령어를 사용할 수 있도록 개선 #56

Closed ro-ssang closed 1 year ago

ro-ssang commented 1 year ago

이슈

설명

# 1. 먼저 `docker ps` 명령어를 실행하여 컨테이너 이름이 **MDGround3-service**인 것을 가져와서 ID 컬럼만 추출 후 변수로 만들어준다.
$ $(docker ps --filter 'name=MDGround3-service' --format '{{.ID}}')

# 2. `docker exec <container-id>` 명령어를 실행하여 docker 컨테이너에 접속 후, flyway를 실행시켜준다.
$ docker exec $(docker ps --filter 'name=MDGround3-service' --format '{{.ID}}') npm run migrate:dev
woogieReal commented 1 year ago

기여 감사합니다 👍 cli 에서 컨테이너에 접속해서 명령어를 실행하는 방법이 있었군요. 하나 또 배워 가네요 ㅎㅎ

flyway: 라는 스크립트에서 migrate: 를 호출하도록 되어있는데 굳이 두 벌로 갈 필요 없을 것 같은데 하나로 합쳐도 될 것 같습니다.

그리고 flyway가 여러 데이터베이스 마이그레이션 도구 툴들 중에 하나라서 명칭이 적절하지 않은 것 같습니다. 변경 부탁드립니다.

감사합니다 :)

ro-ssang commented 1 year ago

flyway: 라는 스크립트에서 migrate: 를 호출하도록 되어있는데 굳이 두 벌로 갈 필요 없을 것 같은데 하나로 합쳐도 될 것 같습니다.

부탁하신대로 다음과 같이 중복된 것을 제거했습니다! 혹시 명령어 이름이 마음에 안든다면 말해주세요 😄

- "flyway:init:prod": "docker exec $(docker ps --filter 'name=MDGround3-service' --format '{{.ID}}') node src/sqls/index.mjs prod",
- "flyway:init:dev": "docker exec $(docker ps --filter 'name=MDGround3-service' --format '{{.ID}}') node src/sqls/index.mjs dev",
- "flyway:clean": "docker exec $(docker ps --filter 'name=MDGround3-service' --format '{{.ID}}') node src/sqls/index.mjs clean",
+ "migrate:init:prod": "docker exec MDGround3-service node src/sqls/index.mjs prod",
+ "migrate:init:dev": "docker exec MDGround3-service node src/sqls/index.mjs dev",
+ "migrate:clean": "docker exec MDGround3-service node src/sqls/index.mjs clean",

그리고 flyway가 여러 데이터베이스 마이그레이션 도구 툴들 중에 하나라서 명칭이 적절하지 않은 것 같습니다. 변경 부탁드립니다.

앗! 그 부분을 놓치고 있었네요 😅 관련 이슈랑 커밋 메세지 다시 수정했으니 PR 검토부탁드릴게요~

woogieReal commented 1 year ago

감사합니다! 컨테이너 ID에서 이름으로 변경 됐네요 👍 머지 할게요!