Beskrivelsen under er ikke nødvendigvis utfyllende og forutsetter kjennskap til R og bruk av git og GitHub. Som en ekstra støtte anbefales R pacakges av Hadley Wickham og spesielt beskrivelsen av git og GitHub.
Prøv templatet
- Hent ned prosjektet rapRegTemplate (
git clone https://github.com/Rapporteket/rapRegTemplate.git
i en terminal).
- Åpne prosjektet i RStudio (åpne fila
rapRegTemplate.Rproj
)
- Installér pakken (
devtools::install()
)
- Definer noen miljøvariabler (
source("dev/renv.R")
)
- Start Shiny-applikasjonen (
run_app(browser = TRUE)
)
- Navigér i applikasjonen for å se på struktur og farger (innhold mangler)
Lag ditt eget prosjekt basert på templatet
Denne delen kan være relevant om det er ønskelig å benytte templatetet som utgangspunkt for etablering av nye registre på Rapporteket.
- Hent ned prosjektet rapRegTemplate
- Slett mappen
.git
- Initiér nytt git-repositor
git init .
git add .
git commit -m "init commit"
- Erstatt
rapRegTemplate
med valgfritt pakkenavn i koden og rydd i prosjektet (f.eks. ved bruk av vscode).
- Bygg, installér og last pakken i R
- Test gjerne at innebygget Shiny-applikasjon fungerer på samme vis som i prosjektet “rapRegTemplate”
Sjekk inn endringer i git
Git er et verktøy for versjonskontroll som gir mulighet for å spore endringer og samarbeide om kode. Basale funksjoner i git er svært nyttinge, men kan virke forvirrende i starten. Sørg for at egen kode (bestandig) versjonshåndteres (i git) og at koden finnes sentralisert og tilgjengelig for deg selv og andre (på GitHub).
- Sett opp git lokalt og etabler et sentralt repository for din R-pakke gjennom å følge Hadley Wickhams veiledning
- Om du ikke har det fra før, etabler et ssh-nøkkelpar for sikker kommunikasjon med GitHub
Dytt (push) R-pakken til GitHub
- Om du ikke allerede har gjort det, lag din egen bruker på GitHub (se over)
- Om du ikke allerede har gjort det, legg ut den offentlige delen av ditt ssh-nøkkelpar på din github-konto
- Om du ikke allerede har gjort det, bli medlem av organisasjonen Rapporteket på GitHub
- Under din egen side på GitHub, opprett et Repository med navn tilsvarende din egen pakke (e.g. “testRegister”)
- I RStudio, push pakken til ditt nye Repository på GitHub
Bygg docker image lokalt
For å bygge og kjøre docker image lokalt kan man gjøre følgende:
- Bygg pakken til en
tar.gz
-fil
- Lag Github Personal Access Token. Dette kan enten gjøres direkte på github (https://github.com/settings/tokens) eller gjennom R (
usethis::create_github_token()
). Det tryggeste er å ikke gi den noe særlig med rettigheter (kun lese). Vi lager og bruker en token for å ikke få feil fordi man har for mange api-kall til github.
- Putt den i miljøvariablen
GITHUB_PAT
.
export GITHUB_PAT=ghp_ETT_ELLER_ANNET # token du nettop lagde
- Bygg image med navn
some_image_name
. Bruker --progress plain
for å få ut alt av stdout
, og mater inn token som en hemmelighet
docker build -t some_image_name --progress plain --secret id=GITHUB_PAT .
- Kjør image
# enten
docker run -p 3838:3838 some_image_name
# eller
docker compose up
- Åpne siden http://localhost:3838/ og se resultatet