docker 컨테이너 환경설정 문제
1640
작성한 질문수 12
docker 컨테이너를 바로 생성하지 않고 따로 실행하는 걸로 했을때 아래와 같은 실행화면까지 나오고 잠시후에 에러메세지가 뜨는데 여기서 더이상 방법을 못찾아서 헤매고 있습니다 ㅎㅎ 윈도우라서 그런건 아니겠죠?
[I 240227 01:42:46 command:177] Registered tasks:
['celery.accumulate',
'celery.backend_cleanup',
'celery.chain',
'celery.chord',
'celery.chord_unlock',
'celery.chunks',
'celery.group',
'celery.map',
'celery.starmap']
[E 240227 01:42:54 events:191] Failed to capture events: 'Error 11001 connecting to redis:6379. getaddrinfo failed.', trying again in 2 seconds.
[E 240227 01:42:54 base_events:1771] Future exception was never retrieved
따로 실행하는 이유는 처음에 docker-compose up --build -d 해서 생성할때 flower에서
Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: exec: "flower": executable file not found in $PATH: unknown
에러가 발생해서 찾아보니 따로 실행하면 된다고 그래서 현재 따로 실행중에있습니다.
version: '3'
services:
app:
build: ./python_app
volumes:
- ./python_app:/usr/src/app
ports:
- "8000:8000" # 필요한 경우, 앱이 외부에 노출할 포트를 지정
redis:
image: "redis:alpine"
celery_worker:
build: ./python_app
command: celery -A tasks worker --loglevel=info
volumes:
- ./python_app:/usr/src/app
depends_on:
- redis
celery_beat:
build: ./python_app
command: celery -A tasks beat --loglevel=info
volumes:
- ./python_app:/usr/src/app
depends_on:
- redis
flower:
image: mher/flower
command: flower --broker=redis://redis:6379/0 --port=5555
ports:
- "5555:5555"
depends_on:
- redis
답변 1
0
안녕하세요 chicmania님,
다음의 에러는 docker에서 컨테이너를 만들 때 flower라는 커맨드를 flower 컨테이너에서 찾지 못해서 생기는 에러입니다. flower 서비스가 redis만 필요로 하니 일단 redis와 flower만 빼고 나머지는 주석을 달아 실행을 미루세요
Error response from daemon: failed to create task for container:
failed to create shim task: OCI runtime create failed: runc create failed:
unable to start container process: exec: "flower": executable file not found
in $PATH: unknown
그리고 다음의 에러는 redis를 그 flower컨테이너에서 액세스를 할 수가 없어서 그런 겁니다. redis가 같은 네트워크에 있다면 아무런 문제가 없어 보이는데, 제 생각에는 redis가 서비스를 시작을 안해서 그런 것 같습니다. 이런 경우에는 일단 redis가 잘 작동하는지, 나머지는 다 주석을 하시고, redis 부분만 한번 실행해보세요. redis가 잘 실행 된다면 그 다음에 flower 서비스부분 주석을 제거하고 실행해보세요.
[E 240227 01:42:54 events:191] Failed to capture events: 'Error 11001 connecting to redis:6379. getaddrinfo failed.', trying again in 2 seconds.
[E 240227 01:42:54 base_events:1771] Future exception was never retrieved
혹시 docker ps 명령어를 사용하셔서, 혹시 다른 redis가 벌써 돌고 있지는 않은지 확인하시고, 뭔가 다른 것이 있다면docker kill을 사용해서 다 지우시고 실행해보세요.
마지막으로 compose를 설명해 드리자면 ...
flower:
image: mher/flower
command: flower --broker=redis://redis:6379/0 --port=5555 <===== 여기 redis:6379가 redis라는 서비스 이름으로 6379포트로 연결하라라는 뜻인데, redis가 없다면 연결을 못하고 위의 에러가 납니다.
ports:
- "5555:5555"
depends_on: <====== redis를 시작한 후에 시작을 하라라는 뜻입니다.
- redis
이것도 아니라면 제가 현재 chicmania님의 랩탑을 보지 않아서 안타깝게도 알 수가 없습니다.
도움이 되어서 해결이 되었으면 좋겠네요.
Dockerfile 질문
0
74
2
Logging 질문
0
125
1
0.0.0.0:8000 접속이 안됩니다
0
296
2
블로그 게시
0
170
2
{{form.as_p}} 사용방법 질문드립니다.
0
228
2
reverse vs reverse_lazy 사용 이유와 차이점을 이해하지 못 했습니다.
0
213
1
urls.py에 라우팅 하는 부분에서요.
0
160
2
handler, static 질문이 있습니다.
0
187
2
build: context 부분이 이해가 되지 않습니다.
1
214
3
직렬화 질문
0
150
1
Celery 수업중 세팅 질문드립니다.
1
180
1
6-1 질문
1
215
1
channels alternative?
1
206
1
크롬에서 서드 파티 쿠키 제한이라는 에러가 뜨는데 혹시 추가로 어떤걸 업데이트 해야지 정상작동 되는지 알 수 있을까요?
0
740
2
dock 환경설정에 대해 잘 이해가 가지 않습니다.
1
281
1
Django Authentication 중에 로그아웃 기능이 안됩니다 ㅠㅠ
1
343
1
학습방식
1
320
2
docker, flower 질문
0
302
1
celery-worker, beat, flower, docker-compose 질문
1
634
1
4-1 공식문서
1
250
1
장고 프로젝트 질문
2
289
1
복습
1
255
1
온라인 ide
1
323
2
vs code
1
363
2





