postgresql를 docker로 올릴 때, 데이터베이스들을 초기화 할 수 있습니다. 이 방법을 알아보겠습니다. 그 전에 volumes에 대해 간단히 알아봅시다. 먼저, 폴더 구조는 아래와 같습니다. docker-compose.yml 파일이 있고, ddl 폴더 밑에 schema.sql이 있습니다. 이제 밑에 있는 compose 파일을 보겠습니다. 11 ~ 15번째 줄이 중요합니다. 11 ~ 13번째 줄부터 해석해 봅시다. 문서를 보면 12 ~ 13번째 줄은 VOLUME:CONTAINER_PATH임을 알 수 있어요. CONTAINER_PATH는 VOLUME이 마운트 되는 경로를 의미합니다. 실제로 처음 postgres가 초기화 되고 볼륨이 만들어 질 때 초기화 되게 하기 위해 13번째 줄을 넣었는데요. ..
Docker 검색 결과
안녕하세요. 이번 시간에는 docker에서 expose 명령어에 대해서 알아보겠습니다. 현재 제 fastapi 프로젝트 구조입니다. docker-compose가 추가되었고, models.py와 db.py가 추가되었습니다. psycopg2-binary와 sqlalchemy가 새로 설치되었습니다. 실습하기 위한 프로젝트 세팅을 해 봅시다. 먼저 ddl/schema.sql입니다. public.test가 없는 경우에만 생성하는 DDL 문입니다. title을 pk로 걸어놓았습니다. db.py입니다. 데이터베이스와 관련된 정보들을 관리합니다. 저 정보들에 대한 것은 fastapi를 공부할 때 다시 언급해 보도록 하겠습니다. 여기에서 중요한 것은 DATABASE_URL이라는 환경 변수를 가져와서, 엔진을 생성하는 데..
안녕하세요. 이번 시간에는 도커 publish port에 대해 알아봅시다. 먼저 간단한 fastapi 프로젝트를 생성해 보겠습니다. 공식 문서에는 셋팅과, 간단한 api 만드는 방법에 대해 각각 링크1과 링크2에서 설명하고 있어요. 이를 토대로 프로젝트를 잡아 봅시다. 프로젝트 구조입니다. 루트 폴더에 Dockerfile과 .dockerignore와 requirements.txt가 있습니다. requirements.txt에는 fastapi를 셋팅하고 난 후에, pip freeze > requirements.txt를 이용해서 생성한 것입니다. 다음에 app 패키지가 있는데요. 이 안에 main.py가 있어요. main.py를 보시면, 이 코드만 있어요. 이는 root_url에 접근했을 때, "Hello f..
최근댓글