diff options
| -rw-r--r-- | .claude/settings.local.json | 3 | ||||
| -rw-r--r-- | docker_build/Dockerfile | 3 | ||||
| -rwxr-xr-x | podman_launch_devenv.py | 4 |
3 files changed, 8 insertions, 2 deletions
diff --git a/.claude/settings.local.json b/.claude/settings.local.json index f689325..eb8ba96 100644 --- a/.claude/settings.local.json +++ b/.claude/settings.local.json | |||
| @@ -5,5 +5,6 @@ | |||
| 5 | "Bash(chmod:*)" | 5 | "Bash(chmod:*)" |
| 6 | ], | 6 | ], |
| 7 | "deny": [] | 7 | "deny": [] |
| 8 | } | 8 | }, |
| 9 | "enableAllProjectMcpServers": false | ||
| 9 | } \ No newline at end of file | 10 | } \ No newline at end of file |
diff --git a/docker_build/Dockerfile b/docker_build/Dockerfile index 644b18f..f5d0a46 100644 --- a/docker_build/Dockerfile +++ b/docker_build/Dockerfile | |||
| @@ -13,7 +13,8 @@ RUN mkdir -p /var/run/sshd && \ | |||
| 13 | ssh-keygen -A && \ | 13 | ssh-keygen -A && \ |
| 14 | sed -i 's/#PubkeyAuthentication yes/PubkeyAuthentication yes/' /etc/ssh/sshd_config && \ | 14 | sed -i 's/#PubkeyAuthentication yes/PubkeyAuthentication yes/' /etc/ssh/sshd_config && \ |
| 15 | sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config && \ | 15 | sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config && \ |
| 16 | sed -i 's/#PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config | 16 | sed -i 's/#PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config && \ |
| 17 | echo "AllowAgentForwarding yes" >> /etc/ssh/sshd_config | ||
| 17 | 18 | ||
| 18 | # Setup SSH directory for root and ensure root has valid shell | 19 | # Setup SSH directory for root and ensure root has valid shell |
| 19 | RUN mkdir -p /root/.ssh && \ | 20 | RUN mkdir -p /root/.ssh && \ |
diff --git a/podman_launch_devenv.py b/podman_launch_devenv.py index 8896c02..2473404 100755 --- a/podman_launch_devenv.py +++ b/podman_launch_devenv.py | |||
| @@ -26,6 +26,8 @@ def launch(): | |||
| 26 | if result.returncode == 0: | 26 | if result.returncode == 0: |
| 27 | ip = run("hostname -I | awk '{print $1}'").stdout.strip() or "localhost" | 27 | ip = run("hostname -I | awk '{print $1}'").stdout.strip() or "localhost" |
| 28 | print(f"🐳 SSH: ssh root@{ip} -p {port}") | 28 | print(f"🐳 SSH: ssh root@{ip} -p {port}") |
| 29 | print(f"🐚 Shell: podman exec -it rocky_dev-{port} /bin/bash") | ||
| 30 | print(f"💡 Tip: For direct shell without port forwarding, use: podman run -it rocky_dev:latest /bin/bash") | ||
| 29 | return result.returncode == 0 | 31 | return result.returncode == 0 |
| 30 | 32 | ||
| 31 | parser = argparse.ArgumentParser(epilog=""" | 33 | parser = argparse.ArgumentParser(epilog=""" |
| @@ -47,3 +49,5 @@ elif args.command == "run": | |||
| 47 | print("❌ Image rocky_dev:latest not found") | 49 | print("❌ Image rocky_dev:latest not found") |
| 48 | else: | 50 | else: |
| 49 | print("Usage: python3 launcher.py {run|list|cleanup} [-p PORT]") | 51 | print("Usage: python3 launcher.py {run|list|cleanup} [-p PORT]") |
| 52 | print("🐚 Shell: podman exec -it rocky_dev-<port> /bin/bash") | ||
| 53 | print("💡 Tip: For direct shell without port forwarding, use: podman run -it rocky_dev:latest /bin/bash") | ||
