- mkdir
- git init
- hub create (Sólo en Mac?)
- open rstudio
- new project
- existing directory > brow rstudio modifica automáticamente .gitignore
- instalar packrat/renv 7a. packrat::init() crea el archivo .Rprofile y la carpeta packrat con varios archivos y carpetas. se añade a .gitignore packrat/lib*/ En realidad, solamente hace falta packrat.lock??? 7b. renv::init() crea el archivo .Rprofile y la carpeta renv con varios archivos y carpetas. No se modifica .gitignore En realidad, solamente hace falta renv
- instalamos un paquete pequeño de prueba install.packages(“glue”)
- creamos un archivo demo.R library(glue) print(glue(“Hello World!”))
- packrat/renv::snapshot() añade el paquete al archivo .lock
- git add –all && git commit -m “message” && git push –set-upstream origin master (solamente la primera vez. Luego sólo git push)
- clonamos localmente los repositorios en nuevas carpetas git clone …
- abrimos el archivo del proyecto y automáticamente packrat/renv se activa y se instala.
- restore instala el paquete
- hacemos source a demo.R y funciona docker 16.cerramos el proyecto, borramos las carpetas del clone y entramos en el proyecto orignial 17a. creamos el dockerfile para packrat FROM rocker/rstudio:3.6.1
RUN apt-get update
&& apt-get install -y
libxml2-dev
libcairo2-dev
vim
&& R –no-save –no-restore -e ‘install.packages(“packrat”)’
WORKDIR /home/rstudio/project COPY . .
RUN R –no-save –no-restore -e ‘packrat::restore()’
&& echo ‘.libPaths(“/home/rstudio/project/packrat/lib/x86_64-pc-linux-gnu/3.6.1”)’ >> /home/rstudio/project/.Rprofile
&& chown -R rstudio:rstudio .
18. git push
19. git clone
18. docker build
19a. demo.R funciona sin entrar en el proyecto. Creo porque se crea Rprofile.site. He modificado el dockerfile como está ahora arriba y solamente funciona si entras en el proyecto; tal como debe de ser.
20a. Funciona con paquetes descargados de github
21a. Solamente hace falta el packrat.lock. Podemos añadir a .gitignore
.Rprofile
packrat/
!packrat/packrat.lock
Binder
22a. Usar opción a: compendium_description y docker file opcion b no permite instalar paquetes de github