I have mlflow and minio running under docker compose. Mlflow successfully logs artifacts to minio and retrieves them. Minio and mlflow have their relevant ports 900 and 5000 exposed by docker. If I run MlflowClient().download_artifacts for predictions from within the docker environment, everything works smoothly. If I run MlflowClient().download_artifacts from outside docker (local machine or remotely), I get the below error. There is no issue in fetching the logged metrics.
botocore.exceptions.ClientError: An error occurred (404) when calling the ListObjectsV2 operation: Not Found
My code:
os.environ['AWS_ACCESS_KEY_ID'] = "x"
mlflow.set_tracking_uri('http://10.0.0.1:5000')
os.environ['AWS_SECRET_ACCESS_KEY'] = "x"
os.environ['MINIO_ACCESS_KEY_ID'] = "x"
os.environ['MINIO_SECRET_ACCESS_KEY'] = "x/me "
from mlflow.tracking import MlflowClient
MlflowClient().download_artifacts("323e1527d49d4e77bd14c387bbdf6372", "model", local_dir)
Any help would be most appreciated.
Thanks
Best Regards,
Adeel