Testcontainers withEnv ఇమేజ్ పుల్ను ప్రాక్సీ ఎందుకు చేయదు
విఫలమైన పుల్ కోసం Docker డీమన్ను కాన్ఫిగర్ చేయండి; కంటైనర్ ప్రాక్సీ వేరియబుల్స్ కంటైనర్ సృష్టించిన తర్వాతే ప్రోగ్రామ్లకు చేరుతాయి.
Testcontainers ఇమేజ్ను పుల్ చేస్తున్నప్పుడు విఫలమైతే, రాబోయే కంటైనర్ withEnv సెట్టింగ్లు సహాయపడలేవు. ఆ రిజిస్ట్రీ డౌన్లోడ్ను కంటైనర్ ఉనికిలోకి రాకముందే Docker డీమన్ నిర్వహిస్తుంది.
| విఫలమైన చర్య | తనిఖీ చేయవలసిన ప్రాక్సీ కాన్ఫిగరేషన్ |
|---|---|
| ఇమేజ్ పుల్ | పరీక్ష ఉపయోగించే Docker డీమన్ మరియు దాని రిజిస్ట్రీ మార్గం |
| నడుస్తున్న కంటైనర్ లోపల డౌన్లోడ్ | ఆ కంటైనర్లో యాప్ మద్దతిచ్చే ఇన్పుట్లు |
| Java పరీక్ష Docker లేదా యాప్కు కనెక్ట్ అవుతుంది | ఆ కనెక్షన్ చేసే Java క్లయింట్ |
రెండో సందర్భం కోసం, ఇప్పటికే ఉన్న GenericContainer నిర్వచనానికి పర్యావరణ వేరియబుల్స్ జోడించండి:
container
.withEnv("http_proxy", "http://proxy.example:8080")
.withEnv("https_proxy", "http://proxy.example:8080");కంటైనర్ లోపలి డౌన్లోడ్కు పబ్లిక్ HTTP ఎండ్పాయింట్ ఉపయోగించడానికి అనుమతి ఉంటే, ఆ విలువలను HTTP ప్రాక్సీ జాబితా నుండి నింపండి. ఇమేజ్లోని ప్రోగ్రామ్ ఆ వేరియబుల్స్ను చదవాలి. అవి ఏదైనా డేటాబేస్ సాకెట్ను HTTP ప్రాక్సీ ట్రాఫిక్గా మార్చవు. ఎండ్పాయింట్ కంటైనర్ నుండి కూడా చేరుకోగలిగి ఉండాలి: దాని 127.0.0.1 తనను తానే సూచిస్తుంది.
మొదటి సందర్భం కోసం, Testcontainers నిజంగా ఉపయోగించే Docker వాతావరణాన్ని కనుగొనండి. రిమోట్ డీమన్ లేదా Docker Desktop స్థానిక dockerd నుండి భిన్నమైన మూలం నుండి కాన్ఫిగరేషన్ తీసుకోవచ్చు. విస్తృత ప్రాక్సీ డిఫాల్ట్ జోడించేటప్పుడు స్థానిక పరీక్ష సేవలను మరియు Docker APIని వాటి ఉద్దేశిత మార్గాల్లో ఉంచండి.