inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

176만명의 커뮤니티!! 함께 토론해봐요.

AWS 5월에 탈퇴해서 그러는데....

미해결

비전공자도 이해할 수 있는 CI/CD 입문·실전

안녕하세요 선생님. 제가 1월부터 5월까지 Spring,Java 벡엔드 과정 교육을 온라인으로 들었습니다. 그 과정에서 AWS 기초를 배우는 과정이 있었는데 5월달에 교육이 끝나면서 탈퇴를 하지 3개월 밖에 안됬는데.. 혹시 이걸 다시 가입해야 되는 걸까요?? 한달 무료 사용해버려서요..

  • aws
  • docker
  • ci/cd
  • github-actions
  • aws-code-deploy
  • infrastructure
  • aws-ec2
김연경 댓글 1 좋아요 0 조회수 120

34강 강의 마지막에 나오는 35강 websocket 관련 강의 관련 질문

해결됨

FastAPI: Python으로 3배 빠르게, 2배 정확한, 10배 빠른 API 만들기

34강 마지막에 35강 강의는 websocket과 관련된 강의라고 하는데 해당 내용에 대한 강의도 있는 건가요? 아니면 35강 부터 Docket 컨테이너화와 AWS 배포 실습에 관한 강의 인가요?

  • python
  • aws
  • docker
  • sqlalchemy
  • FastAPI
kscr37 댓글 1 좋아요 1 조회수 131

9.3 Error 발생 유도 테스트 확인 부탁드립니다.

미해결

그림으로 배우는 쿠버네티스(v1.35)

질문 답변을 제공하지만, 강의 비용에는 Q&A는 포함되어 있지 않습니다. 다만 실습이 안되거나, 잘못된 내용의 경우는 알려주시면 가능한 빠르게 조치하겠습니다! [질문 전 답변] 1. 강의에서 다룬 내용과 관련된 질문인가요? [예 | 아니요] 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? [예 | 아니요] 3. 질문 잘하기 법을 읽어보셨나요? [예 | 아니요] (https://www.inflearn.com/blogs/1719) 4. 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 5. vagrant up 에서 발생하는 문제는 주로 호스트 시스템(Windows, MacOS)과 연관된 다양한 조건에 의해 발생합니다. 따라서 이를 모두 제가 파악할 수 없어서 해결이 어렵습니다. vagrant up 으로 진행이 어렵다면 제공해 드리는 가상 머신(VM) 이미지를 import해서 진행하시기 바랍니다. ( https://inf.run/Ljaer ) [질문 하기] 안녕하세요 9.3 강의 실습 중, secret 데이터를 edit으로 바꿔서 pod를 다시 올려도 error가 발생하지 않고 정상적으로 생성이 되네요.. 혹시나 해서 secret 파일 자체를 변경해서 다시 올리고 생성해도 문제 없이 생성이 되는데 확인 한번 부탁드리겠습니다.

  • docker
  • kubernetes
jhseo 댓글 2 좋아요 0 조회수 152

커리큘럼12.css 정렬 에 나오는 과제 정답알고싶어요

해결됨

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

figma 에 들어가도 css 코드가 안나오고 과제 정답 과 해설이 있으면 좋을거같은데 피그마에서 아무 코드 정보없이 혼자 다 만드려는게 처음 강의를 듣고 과제를 하려는데 있어서 응용해서 뚝딱 만들기가 너무 어렵고 힘들어요 ㅠ

  • javascript
  • node.js
  • docker
  • rest-api
  • nestjs
조성민 댓글 2 좋아요 0 조회수 122

완강 후 설문작성

미해결

비전공자도 이해할 수 있는 Docker 입문/실전

안녕하세요 . 완강 후 설문작성을 진행했는데 후속 강의 할인쿠폰을 받지 못해서 문의드립니다.

  • docker
  • docker-compose
  • docker-volume
  • docker-image
  • container
  • ecr
김진환 댓글 1 좋아요 1 조회수 99

Docker와 AWS 배포 강의 관련

해결됨

FastAPI: Python으로 3배 빠르게, 2배 정확한, 10배 빠른 API 만들기

강의 소개에 안내된 "Docker를 이용해 애플리케이션을 컨테이너화하고, AWS 클라우드 환경에 직접 배포하고 운영" 에 관한 강의는 언제 올라오나요? 어디엔가 답변에 지난 주말에 올라 올 거라는 내용이 있었던 것 같은데.... 아직 업로드가 되지 않아서 문의 남깁니다.

  • python
  • aws
  • docker
  • sqlalchemy
  • FastAPI
moljin 댓글 2 좋아요 0 조회수 132

워커노드 OS SWAP 질문

해결됨

쉽게 시작하는 쿠버네티스(v1.35)

질문 답변을 제공하지만, 강의 비용에는 Q&A는 포함되어 있지 않습니다. 다만 실습이 안되거나, 잘못된 내용의 경우는 알려주시면 가능한 빠르게 조치하겠습니다! [질문 전 답변] 1. 강의에서 다룬 내용과 관련된 질문인가요? [예] 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? [예] 3. 질문 잘하기 법을 읽어보셨나요? [예] ( https://inf.run/DvsRD ) 4. 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 5. vagrant up 에서 발생하는 문제는 주로 호스트 시스템(Windows, MacOS)과 연관된 다양한 조건에 의해 발생합니다. 따라서 이를 모두 제가 파악할 수 없어서 해결이 어렵습니다. vagrant up 으로 진행이 어렵다면 제공해 드리는 가상 머신(VM) 이미지를 import해서 진행하시기 바랍니다. ( https://inf.run/Ljaer ) [질문 하기] 컨테이너 기반 GPU워커 노드의 OS swap을 사용하지 않는 설정이 권장되는지요?

  • docker
  • kubernetes
박 석원 댓글 1 좋아요 0 조회수 103

15강 수정 요청: DOWNLOAD_DIR 확인 구문 부분

해결됨

FastAPI: Python으로 3배 빠르게, 2배 정확한, 10배 빠른 API 만들기

아래의 엔드포인트 두개의 함수 부분에서 async def download_basic(file_name: str): async def download_custom(file_name: str): if not file_path.startswith(os.path.abspath(DOWNLOAD_DIR)): 이 부부의 file_path를 full_file_path를 아래처럼 할당한 후에 if not full_file_path.startswith(os.path.abspath(DOWNLOAD_DIR)): 으로 수정해야 할 듯 합니다. @app.get("/download/basic/{file_name}") async def download_basic(file_name: str): safe_base_filename = os.path.basename(file_name) file_path = os.path.join(DOWNLOAD_DIR, safe_base_filename) full_file_path = os.path.abspath(file_path) . ' ' if not full_file_path.startswith(os.path.abspath(DOWNLOAD_DIR)): # if not file_path.startswith(os.path.abspath(DOWNLOAD_DIR)): @app.get("/download/custom/{file_name}") async def download_custom(file_name: str): safe_base_filename = os.path.basename(file_name) file_path = os.path.join(DOWNLOAD_DIR, safe_base_filename) full_file_path = os.path.abspath(file_path) . ' ' if not full_file_path.startswith(os.path.abspath(DOWNLOAD_DIR)): # if not file_path.startswith(os.path.abspath(DOWNLOAD_DIR)): 그렇지 않으면 검증이 되지 않습니다. 아래 참고 file_path: ./downloadables/스크린샷_3.png full_file_path: D:\Python_FastAPI\Inflearn_Master\File_API\downloadables\스크린샷_3.png os.path.abspath(DOWNLOAD_DIR): D:\Python_FastAPI\Inflearn_Master\File_API\downloadables

  • python
  • aws
  • docker
  • sqlalchemy
  • FastAPI
moljin 댓글 2 좋아요 0 조회수 114

sprint boot 서버 ec2 배포 진행하는데 테스트 파일에서 멈춰서 진행이 안됩니다.

미해결

비전공자도 이해할 수 있는 Docker 입문/실전

............10%............20%.............30%............40%.............50%............60%.............70%............80%.............90%............100% Welcome to Gradle 8.4! Here are the highlights of this release: - Compiling and testing with Java 21 - Faster Java compilation on Windows - Role focused dependency configurations creation For more details see https://docs.gradle.org/8.4/release-notes.html Starting a Gradle Daemon (subsequent builds will be faster) <==========---> 78% EXECUTING [2m 6s] > :test > Executing test com...Ec2SpringBootSampleApplicationTests > :test > 0 tests completed 78%에서 더이상 올라가지 않고 멈춰있네요.. instance를 지우고 다시 해봐도 동일 합니다 ㅜㅜ 어떤 이유때문인지 감이 아예 안잡혀 문의 드립니다!

  • docker
  • docker-compose
  • docker-volume
  • docker-image
  • container
  • ecr
K 댓글 1 좋아요 0 조회수 109

Github repository는 없나요?

해결됨

React & FastAPI로 만드는 투표 커뮤니티 플랫폼: 결제 시스템으로 수익화까지!

Notion에 있는 코드말고, Github Repository는 따로 없나요?

  • react
  • mysql
  • docker
  • rest-api
  • FastAPI
정재웅 댓글 1 좋아요 0 조회수 140

백엔드 도커 실행 에러가 뜹니다 ㅠ

해결됨

React & FastAPI로 만드는 투표 커뮤니티 플랫폼: 결제 시스템으로 수익화까지!

에러 로그는 아래와 같아요 File "<frozen importlib._bootstrap_external>", line 999, in exec_module File "<frozen importlib._bootstrap>", line 488, in call with_frames_removed File "/app/ main.py ", line 6, in <module> from app.db.database import Base, async_engine File "/app/app/db/ database.py ", line 1, in <module> from sqlalchemy.ext.asyncio import AsyncSession, create_async_engine ModuleNotFoundError: No module named 'sqlalchemy' WARNING: WatchFiles detected changes in 'app/db/crud/ user.py '. Reloading... Process SpawnProcess-2: Traceback (most recent call last): File "/usr/local/lib/python3.12/multiprocessing/ process.py ", line 314, in _bootstrap self.run () File "/usr/local/lib/python3.12/multiprocessing/ process.py ", line 108, in run self._target(*self._args, **self._kwargs) File "/usr/local/lib/python3.12/site-packages/uvicorn/_ subprocess.py ", line 80, in subprocess_started target(sockets=sockets) File "/usr/local/lib/python3.12/site-packages/uvicorn/ server.py ", line 67, in run return asyncio.run (self.serve(sockets=sockets)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/asyncio/ runners.py ", line 195, in run return runner.run (main) ^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/asyncio/ runners.py ", line 118, in run return self._ loop.run _until_complete(task) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "uvloop/loop.pyx", line 1518, in uvloop.loop.Loop.run _until_complete File "/usr/local/lib/python3.12/site-packages/uvicorn/ server.py ", line 71, in serve await self._serve(sockets) File "/usr/local/lib/python3.12/site-packages/uvicorn/ server.py ", line 78, in _serve config.load() File "/usr/local/lib/python3.12/site-packages/uvicorn/ config.py ", line 436, in load self.loaded_app = import_from_string( self.app ) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/uvicorn/ importer.py ", line 22, in import_from_string raise exc from None File "/usr/local/lib/python3.12/site-packages/uvicorn/ importer.py ", line 19, in import_from_string module = importlib.import_module(module_str) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/importlib/__init__.py", line 90, in import_module return bootstrap. gcd_import(name[level:], package, level) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "<frozen importlib._bootstrap>", line 1387, in gcd import File "<frozen importlib._bootstrap>", line 1360, in find and_load File "<frozen importlib._bootstrap>", line 1331, in find and_load_unlocked File "<frozen importlib._bootstrap>", line 935, in load unlocked File "<frozen importlib._bootstrap_external>", line 999, in exec_module File "<frozen importlib._bootstrap>", line 488, in call with_frames_removed File "/app/ main.py ", line 6, in <module> from app.db.database import Base, async_engine File "/app/app/db/ database.py ", line 1, in <module> from sqlalchemy.ext.asyncio import AsyncSession, create_async_engine ModuleNotFoundError: No module named 'sqlalchemy' 위 에러 때문인지 코드에서 아래 에러? 도 뜨네요 uvicorn main:app --reload도 당연 에러 뜨구요.. 어떤 부분을 확인하면 될까요? ㅠ

  • react
  • mysql
  • docker
  • rest-api
  • FastAPI
호호하하 댓글 2 좋아요 0 조회수 213

데시보드에서 파드 생성 안됨

미해결

대세는 쿠버네티스 (초급~중급편)

생성이 안되는데 어떤 문제인가요

  • docker
  • kubernetes
  • devops
  • container
이민호 댓글 2 좋아요 1 조회수 115

31강 질문: /docs에 read_all_users 관련

해결됨

FastAPI: Python으로 3배 빠르게, 2배 정확한, 10배 빠른 API 만들기

31강에서 구현된 users.py의 read_all_users는 화면에 구현이 안되는 것이 맞는 것인가요? Users의 POST /users 밑에 GET /users/all로 있어야 할 것 같은데... ===> PC를 재시작 후 다시 서버를 실행해 보니 나타납니다. DB Browser에서 특정 User의 is_admin을 true로 수정하고 저장까지 완료하고 난 후, 각각의 User들로 로그인해보았습니다. 그런데, is_admin이 false인 모든 User들도 read_all_users의 endpoint인 /users/all에서 모든 회원들의 리스트가 조회가 됩니다. /docs 페이지라서 그런 것인지 아니면 잘못 구현된 것인지 궁금합니다. 강의에서는 docs에서의 이런 상황에 대한 언급이 없어 질문을 드립니다.

  • python
  • aws
  • docker
  • sqlalchemy
  • FastAPI
moljin 댓글 3 좋아요 1 조회수 150

강의가 중간에 끊긴 느낌이 듭니다.

미해결

데브옵스(DevOps)를 위한 쿠버네티스 마스터

강의가 중간에 끊긴 기분인데, 뒤에 나오나요??

  • docker
  • kubernetes
댓글 1 좋아요 0 조회수 125

30강 질문: 토큰생성 관련

해결됨

FastAPI: Python으로 3배 빠르게, 2배 정확한, 10배 빠른 API 만들기

30강을 완강후에 Postman을 통해 post로 http://127.0.0.1:8000/token 으로 요청을 보냈는데 아래 처럼 응답으로 토큰이 날아오지 않습니다. 422 Unprocessable Content 에러가 나오구요~~ oauth2_scheme = OAuth2PasswordBearer(tokenUrl="token") # http://<your_domain>/token 뭐가 문제일런지요? postman사용법에 맞게 된것 같지가 않은데요..... @@@ 추가 질문 그리고, 더불어서 발급받은 토큰을 /docs에서 Authentication의 어디에 입력을 해서 테스트를 해야 하는지도 같이 안내바랍니다. 여기 client secret에 입력해서 테스트 하는것 같은데.... username, password를 입력해서 로그인하면 token은 잘 생성됩니다. 그리고 이렇게 username과 password로 로그인할 때 생성된 토큰으로 client secret에 입력해서 로그인하면 auth error Error: Unprocessable Content 라는 메시지가 뜹니다. postman사용법이 미숙해서인지 postman에서 post /token으로 날려도 토큰이 반환되어 오질 않습니다. 당연히 docs에서 username, password로 로그인한 후에... 수정, 삭제 권한적용은 잘 적용됩니다.

  • python
  • aws
  • docker
  • sqlalchemy
  • FastAPI
moljin 댓글 2 좋아요 1 조회수 229

호스트 컴퓨터에서 폴더를 삭제하면?

미해결

비전공자도 이해할 수 있는 Docker 입문/실전

안녕하세요, 질문 있습니다! 마지막 부분에서 초기 비밀번호 외에 새로 생성한 비밀번호로는 새로 생성할 수 없다고 하셨는데, 호스트 컴퓨터의 폴더를 삭제하고 다시 생성하는 경우 이전에 생성했던 데이터베이스도 모두 삭제되는 게 맞을까요? : 호스트 컴퓨터의 폴더를 삭제하면 데이터도 삭제로 이해면 될지 답변부탁드립니다. (유익한 강의 즐겁게 수강중입니당.. 감사합니다.)

  • docker
  • docker-compose
  • docker-volume
  • docker-image
  • container
  • ecr
이수경 댓글 2 좋아요 0 조회수 143

26강 에러발생: 해결방법 알려주세요.

해결됨

FastAPI: Python으로 3배 빠르게, 2배 정확한, 10배 빠른 API 만들기

26강에서 User model를 만들고, Task model의 관계 설정까지 하고 env.py에서 User를 임포트하고 난후 alembic revision --autogenerate를 실행하고, alembic upgrade head 를 실행하면 User 테이블과 Task 모델의 관계설정은 잘 만들어 졌지만, 아래에 보이는 것처럼, 제약조건에 name을 지정하라고 나옴니다. 그래서 name을 지정하고 db를 삭제하고, alembic을 초기화된 상태로 만든 후에 다시 똑같은 과정을 거쳐 실행햇는데, 두번째 alembic revision --autogenerate 을 실행하면, sqlalchemy.exc.NoReferencedColumnError: Could not initialize target column for ForeignKey ' users.id ' on table 'tasks': table 'users' has no column named 'id' 이런 오류가 나타납니다. 자꾸 자꾸 계속해서 다시 해봐도 제약조건에 이름을 넣으라고 나오고, 그것을 수정하면 users에 id가 없다는 둥 계속 똑같이 오류가 나옵니다. 해결 방법은 무엇일까요? 완전히 새로 해봐도 똑같은 오류만 계속 반복됩니다.

  • python
  • aws
  • docker
  • sqlalchemy
  • FastAPI
moljin 댓글 3 좋아요 0 조회수 219

마지막 강의 질문있습니다.

미해결

비전공자도 이해할 수 있는 Docker 입문/실전

services: instagram-server: image: 002177417362.dkr.ecr.ap-northeast-2.amazonaws.com/instagram-server:latest ports: - 8080:8080 depends_on: my-db: condition: service_healthy my-cache-server: condition: service_healthy my-db: image: mysql environment: MYSQL_ROOT_PASSWORD: pwd1234 MYSQL_DATABASE: mydb volumes: - ./mysql_data:/var/lib/mysql ports: - 3306:3306 healthcheck: test: [ "CMD", "mysqladmin", "ping" ] interval: 5s retries: 10 my-cache-server: image: redis ports: - 6379:6379 healthcheck: test: [ "CMD", "redis-cli", "ping" ] interval: 5s retries: 10 aws ecr에서 폴더 만든후에 compose.yml을 따로 작성했는데 my-db에 mysql이랑 my-cache-server redis는 도커허브에서 이미지를 가져오는건가요?

  • docker
  • docker-compose
  • docker-volume
  • docker-image
  • container
  • ecr
임다정 댓글 1 좋아요 0 조회수 96

25강에서 에러발생: 해결방법 알려주세요

해결됨

FastAPI: Python으로 3배 빠르게, 2배 정확한, 10배 빠른 API 만들기

💡 질문하기 전에 먼저 확인해보세요! UnicodeDecodeError: 'cp949' codec can't decode byte 0xed in position 3465: illegal multibyte sequence 유니코드 관련에러가 발생합니다. utf-8 관련 설정에 문제가 있어보이는데, 해결방법을 구합니다. 별것을 다해본것 같은데 해결이 되질 않습니다. 코드는 알려주신데로 아래와 같이 수정했습니다. # /alembic.ini 파일 sqlalchemy.url = sqlite+aiosqlite:///./sql_app.db # /alembic/env.py 파일 import asyncio # 추가 from logging.config import fileConfig import os # 경로 작업 위해 추가 import sys # 경로 작업 위해 추가 from sqlalchemy import engine_from_config from sqlalchemy import pool # ✨ 추가: 비동기 엔진 설정을 위해 async_engine_from_config 사용 ✨ from sqlalchemy.ext.asyncio import async_engine_from_config from alembic import context # --- ✨ 추가: 프로젝트 루트 경로 추가 (env.py가 app 모듈을 찾도록) ✨ --- # env.py 파일의 부모 디렉토리의 부모 디렉토리 (즉, 프로젝트 루트)를 sys.path에 추가 sys.path.insert(0, os.path.realpath(os.path.join(os.path.dirname(__file__), ".."))) # -------------------------------------------------------------- # --- ✨ 추가: Base 및 모델 임포트 ✨ --- from app.database import Base # database.py의 Base 임포트 import app.sql_models.task # task 모델 모듈 임포트 (Base.metadata가 인식하도록) # 만약 다른 모델 파일들이 있다면 모두 임포트해주는 것이 안전합니다. # ----------------------------------------------------------------------------- # this is the Alembic Config object, which provides # access to the values within the .ini file in use. config = context.config # Interpret the config file for Python logging. # This line sets up loggers basically. if config.config_file_name is not None: fileConfig(config.config_file_name) # add your model's MetaData object here # for 'autogenerate' support # from myapp import mymodel # target_metadata = mymodel.Base.metadata # target_metadata = None # --- ✨변경: target_metadata 설정 ✨ --- target_metadata = Base.metadata # 우리의 모델 메타데이터 지정! # -------------------------------- # other values from the config, defined by the needs of env.py, # can be acquired: # my_important_option = config.get_main_option("my_important_option") # ... etc. # ✨ 추가 ✨----------------------------------------------------------------- def do_run_migrations(connection): # context 설정 및 마이그레이션 실행 (run_sync 내부에서 호출될 함수) context.configure(connection=connection, target_metadata=target_metadata) with context.begin_transaction(): context.run_migrations() # --------------------------------------------------------------------------- # ... (run_migrations_offline 함수는 보통 그대로 둠) ... def run_migrations_offline() -> None: """Run migrations in 'offline' mode. This configures the context with just a URL and not an Engine, though an Engine is acceptable here as well. By skipping the Engine creation we don't even need a DBAPI to be available. Calls to context.execute() here emit the given string to the script output. """ url = config.get_main_option("sqlalchemy.url") context.configure( url=url, target_metadata=target_metadata, literal_binds=True, dialect_opts={"paramstyle": "named"}, ) with context.begin_transaction(): context.run_migrations() # --- ✨ 변경: run_migrations_online 함수 비동기 방식으로 수정 ✨ --- async def run_migrations_online() -> None: """Run migrations in 'online' mode for an async application.""" # config 섹션에서 비동기 엔진 생성 connectable = async_engine_from_config( config.get_section(config.config_ini_section), prefix="sqlalchemy.", poolclass=pool.NullPool, future=True, # SQLAlchemy 2.0 스타일 사용 ) # 비동기적으로 DB 연결 async with connectable.connect() as connection: # 동기적인 마이그레이션 함수(do_run_migrations)를 # 비동기 연결의 run_sync 메서드 내에서 실행 await connection.run_sync(do_run_migrations) # 엔진 연결 종료 await connectable.dispose() # ----------------------------------------------------------------- ''' # ✨ 위의 것으로 수정 def run_migrations_online() -> None: """Run migrations in 'online' mode. In this scenario we need to create an Engine and associate a connection with the context. """ connectable = engine_from_config( config.get_section(config.config_ini_section, {}), prefix="sqlalchemy.", poolclass=pool.NullPool, ) with connectable.connect() as connection: context.configure( connection=connection, target_metadata=target_metadata ) with context.begin_transaction(): context.run_migrations() ''' if context.is_offline_mode(): run_migrations_offline() else: # ✨ run_migrations_online() # 아래로 변경 # 온라인 모드일 경우 비동기 함수 실행 asyncio.run(run_migrations_online())

  • python
  • aws
  • docker
  • sqlalchemy
  • FastAPI
moljin 댓글 3 좋아요 0 조회수 272

인기 태그

인프런 TOP Writers

주간 인기글