Skip to content

cedanl/r-devcontainer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

R devcontainer

Een kant-en-klare ontwikkelomgeving voor R-projecten op basis van rocker/tidyverse. Inclusief Claude Code CLI en CEDA org-skills.

Vereisten

Docker is verplicht — zonder Docker werkt geen van onderstaande methoden.

Opstarten

VS Code

  1. Installeer de extensie Dev Containers (ms-vscode-remote.remote-containers)
  2. Clone de repo en open de map:
    git clone https://github.com/cedanl/r-devcontainer
    code r-devcontainer
  3. Klik op "Reopen in Container" rechtsonder, of F1Dev Containers: Reopen in Container

Positron / VSCodium

Positron en VSCodium ondersteunen de native Dev Containers extensie niet volledig. Gebruik in plaats daarvan de Codium Devcontainer extensie — die bouwt de container via Docker en verbindt via SSH.

Eenmalige setup:

  1. Installeer de benodigde extensies:
    positron --install-extension DDorch.codium-devcontainer
    positron --install-extension jeanp413.open-remote-ssh
  2. Installeer de Claude Code extensie handmatig via de Extensions-zijbalk (zoek op anthropic.claude-code op Open VSX)

Container starten:

  1. Clone de repo en open de map in Positron
  2. F1Devcontainer: Open Folder in Devcontainer (SSH)
  3. Na het bouwen: verbind opnieuw via F1Devcontainer: Open Folder in Devcontainer (SSH)

Bij de eerste verbinding opent een terminal met de onboarding-wizard voor credentials. Zie Credentials instellen hieronder.

Let op: containerEnv wordt niet ondersteund door Codium Devcontainer. Host shell variabelen worden niet automatisch doorgegeven — gebruik de .env methode of de onboarding-wizard.

DevPod

devpod up github.com/cedanl/r-devcontainer

Of via de DevPod UI: Create Workspace → voer de repository-URL in.

Devcontainer CLI

npm install -g @devcontainers/cli
git clone https://github.com/cedanl/r-devcontainer
devcontainer up --workspace-folder r-devcontainer

Credentials instellen

De container heeft drie credentials nodig: Anthropic Foundry API (voor Claude Code) en een GitHub token (voor gh CLI).

Automatisch — via host shell config (aanbevolen)

Als deze variabelen al in je shell config staan (.zshrc, .bashrc, etc.), worden ze automatisch doorgegeven aan de container. Er is geen verdere setup nodig:

export ANTHROPIC_FOUNDRY_API_KEY=<jouw api key>
export ANTHROPIC_FOUNDRY_RESOURCE=<jouw resource naam>
export GITHUB_TOKEN=<jouw github token>

Handmatig — via .env bestand (fallback)

Staan de variabelen niet in je shell config, dan kun je ze eenmalig invullen in een lokaal .env bestand:

Stap 1 — Maak het secrets-bestand aan:

cp .devcontainer/.env.example .devcontainer/.env

Stap 2 — Vul je credentials in in .devcontainer/.env:

ANTHROPIC_FOUNDRY_API_KEY=<jouw api key>
ANTHROPIC_FOUNDRY_RESOURCE=<jouw resource naam>
GITHUB_TOKEN=<jouw github token>

Dit bestand staat in .gitignore en wordt nooit gecommit.

Stap 3F1Dev Containers: Rebuild Container

Na het herbouwen werkt claude en gh meteen.

Bij eerste start

Als credentials nog niet beschikbaar zijn, start onboard.sh automatisch en vraagt om de Foundry credentials in te vullen. Je kunt dit ook handmatig opnieuw uitvoeren met:

onboard

Claude Code extensie instellen

Installeer de Claude VS Code-extensie (anthropic.claude-code) en zet bewerkingen op automatisch accepteren:

F1Open User Settings (JSON) → voeg toe:

"chat.editing.autoAccept": true

Zonder deze instelling vraagt de extensie bij elke bestandswijziging om bevestiging.

Snelle fix voor VS Code: Ga naar VS Code-instellingen → zoek op Claude → zet de toggle "Allow dangerously skip permissions" aan. Daarna treedt defaultMode: bypassPermissions in .claude/settings.json in werking en verschijnen er geen prompts meer.

Persoonlijke instellingen via dotfiles

De container laadt automatisch gedeelde standaard-settings (Claude Code). Wil je daar je eigen voorkeuren bovenop zetten — zoals shell aliases, git config of editor keybindings — dan kun je een dotfiles repo gebruiken.

Eenmalig instellen in VS Code of Positron:

F1Open User Settings (JSON) → voeg toe:

"dotfiles.repository": "https://github.com/<jouw-gebruikersnaam>/dotfiles"

Bij elke container start kloont de devcontainer jouw dotfiles repo automatisch en voert install.sh uit. Je beheert die repo zelf — het raakt deze repo niet.

Nog geen dotfiles repo? GitHub heeft een handleiding om er een aan te maken. De aanpak werkt ook buiten Codespaces in elke devcontainer.

Wat zit er in de container?

Tool Beschrijving
R + tidyverse R met vooraf geïnstalleerde tidyverse-pakketten
devtools, pak, renv R-pakketbeheer en projectbeheer
claude Claude Code CLI
gh GitHub CLI
CEDA org-skills Geladen vanuit cedanl/.github via npx skills

Problemen oplossen

Probleem Oplossing
"Cannot connect to Docker daemon" Zorg dat Docker draait
Container bouwt niet Controleer je internetverbinding
claude geeft API-fout Controleer .devcontainer/.env en rebuild
Skills niet geladen npx skills add cedanl/.github --skill '*' -a claude-code -y --copy -g

About

Een minimale devcontainer voor R

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors