Aakash, non mi è chiaro se il server MongoDB è in esecuzione come contenitore docker o se è un'applicazione standard sull'host docker.
Docker esegue più reti possibilmente con driver diversi, quindi devi collegare pytorch a una rete che abbia accesso alla rete dell'istanza MongoDB.
Se MongoDB è in esecuzione come applicazione sulla macchina host , aggiungi un --network="host"
segnala al tuo comando pytorch.
docker run -it -v /home/ubuntu/Downloads/docker_work/test_py_app/app:/workspace/app -p 8881:8888 -p 5002:5002 --gpus all --network="host" --rm nvcr.io/nvidia/pytorch:20.08-py3
Questo indicherà a docker di associare pytorch alle interfacce di rete reali e di dargli accesso a mongo tramite localhost: 27017
Se MongoDB è in esecuzione come contenitore Docker , assicurati di aver eseguito il mapping della sua porta al mondo esterno o se stai eseguendo pytorch sulla stessa rete virtuale.
Per esporre semplicemente la porta, assicurati che a -p 27017:27017
flag esiste sul comando di esecuzione della finestra mobile.
Per utilizzare la stessa rete virtuale, controlla Networks
chiave sull'output della docker inspect MONGO_CONTAINER_ID
comando e aggiungi lo stesso nome di --network="name"
sull'esecuzione di pytorch.
Per ulteriori informazioni, dai un'occhiata al manuale della rete Docker .