I can build my env locally from a .yaml file, but the versions and many of the packages are not available in the default container. Step 8/15 : "RUN ldconfig /usr/local/cuda/lib64/stubs && conda env create " doesn't show which package is not found. python=3.7.3=h510b542_1 is not supported but python=3.6.8 will work. You need more documentation on what libraries are supported so that users can plan around these limitations.
⚠Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.
A potential solution would be a link to a .yaml file that would run. Then users could build that environment locally and use it to develop their workload. Currently the only way is to guess that my packages will be supported.
Hi @BillmanH ,
Could you clarify what the issue is? Is the issue that the exact list of dependencies are not provided for the base image?
We already have some methods to help with the scenario:
Environment.from_conda_specification(name, file_path) which allows you to create an environment object by providing a .yml file.register(workspace) will register that environment (including all the dependencies)build_local(workspace) will then contact Environment Management Service (EMS) to get the final dockerfile which is used to build the image in the cloud and build the image locally.Also, if you have access to the image build logs it will include the error message that conda failed with, giving you detailed information about what caused the failure.
I guess the issue is that you can't use python 3.7, for example. The logs are good to tell you what didn't work, but not at telling you what will work. The document is very good at showing how to load an env.yaml file. Some kind of list of restrictions or even the env.yaml file that was used in the build would be helpful rather than guessing. But doesn't show what isn't compatable. Thanks for the build_local btw, I've been looking all over for that.
FYI - @vmagelo @Blackmist
@changyoungpark , I think you described it well: _the exact list of dependencies are not provided for the base image_ If you had a link to the base image that users could experiment locally, or the .yaml file to create it, then it would go a long way to troubleshooting issues. However, it may be a better best practice to use the base image just to do the tutorials and then migrate to your own image as soon as possible. In that case, knowing more about the specs of the base image would be important to know.
Please see this repository for details of base images: https://github.com/Azure/AzureML-Containers
We updated the docs to link to base images github pages.
For future users, I found a really great workaround (in addition to @rastala 's comment above). You can go into the container repository associated with the resource, pull the container image for your run (id is in the logs) and test locally. You can export your own env.yaml file and try different things.
Most helpful comment
Hi @BillmanH ,
Could you clarify what the issue is? Is the issue that the exact list of dependencies are not provided for the base image?
We already have some methods to help with the scenario:
Environment.from_conda_specification(name, file_path)which allows you to create an environment object by providing a .yml file.register(workspace)will register that environment (including all the dependencies)build_local(workspace)will then contact Environment Management Service (EMS) to get the final dockerfile which is used to build the image in the cloud and build the image locally.Also, if you have access to the image build logs it will include the error message that conda failed with, giving you detailed information about what caused the failure.