inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

도커 쓸 땐 필수! 도커 컴포즈

[개인 실습 해설] - flask(python) + redis 서비스 실행하기

[Q : 섹션3. flask + redis 서비스 실행하기 실습편] Internal Server Error

855

JJ

작성한 질문수 6

1

브라우저에서 접속을 시도하면 internal server error 라고 뜨면서 정상작동하지 않습니다. 위 로그 기록 참고하셔서 조치 방법을 알려주시면 고맙겠습니다. 

InternalServerError docker flask redis

답변 2

0

JJ

확인이 늦었습니다^^;

===docker-compose.yml===

version: '3'
services:
    my_flask:
        image: flask-redis
        ports:
            - 50027:5000
    my_redis:
        image: redis


===app.py===

import time

import redis
from flask import Flask

app = Flask(__name__)
cache = redis.Redis(host='redis', port=6379)


def get_hit_count():
    retries = 5
    while True:
        try:
            return cache.incr('hits')
        except redis.exceptions.ConnectionError as exc:
            if retries == 0:
                raise exc
            retries -= 1
            time.sleep(0.5)


@app.route('/')
def hello():
    count = get_hit_count()
    return 'Hello World! I have been seen {} times.\n'.format(count)


===Dockerfile===
FROM python:3.7-alpine
WORKDIR /code
ENV FLASK_APP app.py
ENV FLASK_RUN_HOST 0.0.0.0
RUN apk add --no-cache gcc musl-dev linux-headers
COPY requirements.txt requirements.txt
RUN pip install -r requirements.txt
COPY . .
CMD ["flask", "run"]

0

너굴

services에서 redis 서비스의 이름을 'my_redis'라고 하셨네요~ 서비스의 이름이 곧 서버 이름이라고 보시면 되는데요. app.py 파일에 host='redis'라고 적어두었기 때문에 'redis'로 접속하려다 실패하는 상황입니다.

 이 부분을 docker-compose.yml의 'my_redis'를 'redis'로 바꿔주시기만 하면 잘 작동하겠습니다. (아니면 반대로 app.py 파일의 'redis'를 'my_redis'로 바꾸셔도 되겠습니다.)

0

너굴

오류 로그를 보니 웹 서버가 redis에 접속하지 못한 상황으로 보입니다.

작성하신 docker-compose.yml 파일을 적어주시면 문제점이 무엇인지 살펴보는 데 도움이 되겠습니다.

개인실습해설 프론트엔드, 백엔드 데이터베이스 방명록

0

92

2

db 란?

0

74

1

docker run -it -p 8080:80 --rm -v /home/nayuoh/docker-compose/:/usr/share/nginx/html/ nginx

0

101

1

{pwd}

0

84

1

${pwd}

0

82

1

docker 설치 후 첫 실행 시 docker.sock. 에러

0

926

2

도커 컴포즈 그대로 해서 docker-compose up -d 명령어 쳤는데, 프론트엔드랑 몽고디비는 up 상태가 되는데, 백엔드에서 몽고디비 커넥션이 안되네요

0

502

2

ghost 테스트 안됨

1

388

2

docker compose up 에러 질문드립니다~

1

1396

1

Volume 관련 질문 드립니다.

0

336

1

바로 멈춤 문제

0

360

1

볼륨 질문 드립니다.

1

282

1

실행시 바로 멈춤

1

361

1

강의자료 html에 있는 소스코드처럼 어떻게 작성하나요?

1

305

1

docker-compose.yml 파일 문법자료 문의 입니다

1

298

1

소스코드 복사해서 실습시 불편사항

1

276

1

depends_on 설정

1

338

1

docker run명령어는 언제 사용하나요?

1

337

1

docker-compose exec 질문 드립니다.

1

1148

1

volumes db_data 문의2

0

1037

1

구글링을 했는데 해결방안을 모르겠습니다.

1

232

1

안녕하세요!

1

197

1

강의 ppt

1

318

1

docker-compose 명령어 관련 질문입니다.

1

529

1