앞으로 매일은 아니더라도 내가 알게 된 것들을 '왜'를 덧붙여서 작성하기로 했다.
이것들이 모여서 내 매일의 근간을 이루길 바라며.
- [Docker] Docker 이미지 pull할때 m 시리즈 mac들은 뒤에 —platform linux/amd64 붙여주기.
왜? 다음과 같은 에러를 막기 위해 : `Error response from daemon: no matching manifest for linux/amd in the manifest list entries: no match for platform in manifest: not found` - [QGIS] qgis에서 `delete hole` 기능이 있다. Interior hole들을 싹 다 지우고 exterior ring만 남길 수 있다.
왜? 어떤 데이터에 버퍼를 줄 일이 있었는데, 버퍼를 주니까 합쳐지지 않은 공간들이 inner ring으로 남아서 깨끗하게 지우려고 했다. - [DB] postgresql에서 사용자가 기본으로 쓰는 public 스키마 말고 다른 스키마를 쓰도록 하려면 `grant`를 사용해서 다음과 같은 작업을 해주면 된다.
왜? 스키마마다 데이터 저장하는게 달라서, user별로 접근 가능한 스키마를 구분하고 싶었다.
배운건 superuser 권한을 바로 주고 싶었는데, table, sequence, functions, db connection 이 네가지에 접근 허용 절차를 밟아야 했다는 것.
ALTER DEFAULT PRIVILEGES IN SCHEMA <schema_name>
GRANT ALL PRIVILEGES ON TABLES TO <user_name>;
ALTER DEFAULT PRIVILEGES IN SCHEMA <schema_name>
GRANT ALL PRIVILEGES ON SEQUENCES TO <user_name>;
ALTER DEFAULT PRIVILEGES IN SCHEMA <schema_name>
GRANT ALL PRIVILEGES ON FUNCTIONS TO <user_name>;
GRANT CONNECT ON DATABASE <database_name> TO <user_name>;
4. [Docker, DB] postgresql만 이런지 모르겠다. homebrew로 서비스를 설치하고 가동시킨 경우, 서비스가 실행되지 않더라도 포트의 사용 우선순위를 가져가는 경우가 있다. 분명 5432 기본 포트를 쓰는 db 서버가 없고, docker로 5432를 주고 실행시켰을 때 정상적으로 잘 돌아가길래 뭐가 문제인지 한참을 찾았다.
왜? docker로 db띄워서 pgadmin에 연결하려고 했는데, 갑자기 -U 옵션으로 준 사용자 롤이 없다고 뜨는게 아닌가! 근데 docker exec로 psql를 실행시켰을땐 또 멀쩡하게 돌아간다(미쳐!)
sudo lsof -i :5432 # 여기서 postgres라고 되어있는 process를 찾는다
ps -fp {process_id} # 어떻게 실행된 프로세스인지 확인한다
kill -9 {process_id} # 프로세스를 죽이거나
brew services stop postgresql@{버전} # 이를 통해 자동 재실행 되는 postgres를 내린다
5. [Celery] 이건 지금 한창 보고 있는데, celery에서 canvas 위에 - canvas는 워크플로우의 전체 설계도라고 생각하면 됨 - chain, group, chord 등의 pipeline 구성 방법들을 제공하고 있는데, link라는 기능을 써서 콜백을 이을수도 있다.
왜? 모델 API에 http 요청을 보낼 일이 있었는데, 요청이 완료되었는지 확인하는 task를 스스로 retry하기 위해서 bind=True옵션과 함께 쓰는걸 추천받았다. 근데 이건 테스트해보고, retry에는 link밖에 못쓰는지 더 알아보려고 한다. link라는게 있다는 거, 그리고 코드에 일단 적용시켜서 내일 돌아가는걸 테스트 해봐야 한다.
'Develope > 조각모음' 카테고리의 다른 글
| 260119 (2) | 2026.01.19 |
|---|---|
| 우당탕탕 클래스 설계하기 (0) | 2024.10.18 |
| 우당탕탕 Webpack 사용기 (0) | 2024.10.15 |