다음 작성 파일이 있습니다:
으아아아도커파일:
으아아아docker compose를 실행하면 애플리케이션의 상태 확인이 계속 실행됩니다. 컨테이너를 시작할 수 없습니다.라는 오류로 인해 컨테이너가 종료되기를 원합니다.
골랑코드main.go
로그인 앱은 다음과 같습니다:
으아아아docker ps
출력
version: "3" services: app: build: . ports: - 8080:8080 volumes: - "./:/src" healthcheck: test: ["CMD-SHELL", "curl -f http://localhost:8080/fail-health-check || exit 1"] interval: 5s timeout: 5s retries: 1 command: ["go", "run", "main.go"]
go run main.go
)正在以 PID 1
)가 실행 중입니다. 컨테이너를 종료하려면 프로세스를 중지해야 하며 프로세스는 보호됩니다.
를 실행합니다. 소켓을 컨테이너에 매핑하면 보안에 영향을 미치므로 주의해서 진행하세요. docker stop
ps -afx | 等命令grep 去 | awk '{print }' | xargs Kill -9
(对这个答案表示敬意),即特别是在您的 healthcheck
中,它可能看起来像 curl -f http:// /本地主机:8080/失败健康检查 || (ps -afx | grep go | awk '{print }' | xargs Kill -9)
를 사용하세요. syslog
驱动程序,Docker 容器将日志写入 /var/log/syslog
。因此,在退出之前,您可能需要 echo "Error text"
到 /var/log/syslog
위 내용은 docker compose healthcheck가 종료되지 않아 오류가 발생하여 시작할 수 없습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!