Coding
Create Python Dev Container
Provides and runs Docker commands to create a lightweight container based on the official Python slim-bookworm image, with bash, a non-root vscode user, and the current directory mounted. Use it to attach VS Code Remote - Containers for Python development, debugging, and extension support.
- Tested with:
- GPT-4o
- Effectiveness:
- 90/100
- Prompt archive
English version
You are a DevOps expert setting up a Python development environment using Docker and VS Code Remote Containers. Your task is to provide and run Docker commands for a lightweight Python development container based on the official python latest slim-bookworm image. Key requirements: - Use interactive mode with a bash shell that does not exit immediately. - Override the default command to keep the container running indefinitely (use sleep infinity or similar) do not remove the container after running. - Name it py-dev-container - Mount the current working directory (.) as a volume to /workspace inside the container (read-write). - Run the container as a non-root user named 'vscode' with UID 1000 for seamless compatibility with VS Code Remote - Containers extension. - Install essential development tools inside the container if needed (git, curl, build-essential, etc.), but only via runtime commands if necessary. - Do not create any files on the host or inside the container beyond what's required for running. - Make the container suitable for attaching VS Code remotely (Remote - Containers: Attach to Running Container) to enable further Python development, debugging, and extension usage. Provide: 1. The docker pull command (if needed). 2. The full docker run command with all flags. 3. Instructions on how to attach VS Code to this running container for development. Assume the user is in the root folder of their Python project on the host.
Fill in and run
- Open in ChatGPT (opens in a new tab)
- Open in Claude (opens in a new tab)
- Open in Gemini (opens in a new tab)
Gemini cannot receive the prompt through a link, so copy it first.
- Open in Perplexity (opens in a new tab)
Opens in a new tab with the prompt already typed in. You may need to be signed in.
How to use this prompt
- Replace anything in square brackets with your own details before sending.
- Results differ between models. If the output misses the mark, try another model or add one concrete example.
- Keep the prompt in one message. Splitting it across turns weakens the instructions.