4 ms·
Same. Getting a python environment up and running can be a multi-day endeavor if you're unlucky. Just using docker compose on the existing Dockerfile for the pr
by matsemann 5y ago
Same. Getting a python environment up and running can be a multi-day endeavor if you're unlucky. Just using docker compose on the existing Dockerfile for the project and mounting the local filesystem, means everything just works. PyCharm now works nicely with a remote interpreter inside docker compose.
I've even tried doing that with all the devtools we have. Like normally a developer here has to install gcloud, terraform, kubectl, apt-get lots of stuff, and then 3-4 internal tools. Then configure all of it, and of course some stuff will just not work on someone's computer. But creating a docker image including all that means that I can grab a new computer and be up and running in minutes.
- hushpuppy 5y agoI regularly use asdf-vm to manage kubectl, python, nodejs, and a bunch of other stuff. "Setting up a Python environment" takes about 10 minutes and it's dead nuts reliable. It is a very effective package manager.
- antholeole 5y agoHijacking this: does anyone know how to get vscode to use a python interpreter inside a docker container for linting? I’ve resorted to using the docker container, but also having a python env so that I can tell vscode to point to the python interpreter in the env to get linting. Otherwise, dependencies come up unresolved. I did some googling, but I’m unfortunately not experienced enough to be able to describe the problem succinctly to google. Using pylance, btw. TIA!
- nevalsar 5y agoTry this: 1. Bring up command palette using `Ctrl+Shift+p` 2. Search and select "Python: Select Interpreter" 3. Select your Python environment. This works in VSCode over SSH perfectly fine - the locally running VSCode is able to detect and select Python environments in the remote server.
- antholeole 5y agoThe trouble with this is that the python environment is in the container - In step 2, id need to type path to the interpreter that it inside the container. Although, now you’ve got me thinking what would happen if I mounted the interpreter inside the container to something local that I can point to? Might try this later, thanks for the help!
- matsemann 5y agoHave you tried VSCode's remote abilities? Should do exactly as you describe. https://code.visualstudio.com/docs/remote/remote-overview https://code.visualstudio.com/docs/remote/remote-overview or https://devblogs.microsoft.com/python/remote-python-development-in-visual-studio-code/#remote-docker-workspaces-and-dev-containers https://devblogs.microsoft.com/python/remote-python-developm...
- antholeole 5y agoI’ve seen these and got it to work this way. I’m not too fond of working inside the container as it’s just a little more friction, but I’ve been working this way for a little bit now. I was hoping to avoid working in the container.