diff --git a/inst/cloudconfig/rstudio-noauth.yaml b/inst/cloudconfig/rstudio-noauth.yaml index 2958a58..15c4644 100644 --- a/inst/cloudconfig/rstudio-noauth.yaml +++ b/inst/cloudconfig/rstudio-noauth.yaml @@ -22,7 +22,7 @@ write_files: [Service] Restart=always Environment="HOME=/home/gcer" - ExecStartPre=/usr/bin/docker-credential-gcr configure-docker + ExecStartPre=/usr/bin/docker-credential-gcr configure-docker --registries=asia.gcr.io,eu.gcr.io,gcr.io,marketplace.gcr.io,us.gcr.io,docker.pkg.dev,us-docker.pkg.dev,eu-docker.pkg.dev,asia-docker.pkg.dev ExecStart=/etc/gcer/startup.sh ExecStop=/usr/bin/docker stop rstudio ExecStopPost=/usr/bin/docker rm rstudio diff --git a/inst/cloudconfig/rstudio.yaml b/inst/cloudconfig/rstudio.yaml index 2958a58..15c4644 100644 --- a/inst/cloudconfig/rstudio.yaml +++ b/inst/cloudconfig/rstudio.yaml @@ -22,7 +22,7 @@ write_files: [Service] Restart=always Environment="HOME=/home/gcer" - ExecStartPre=/usr/bin/docker-credential-gcr configure-docker + ExecStartPre=/usr/bin/docker-credential-gcr configure-docker --registries=asia.gcr.io,eu.gcr.io,gcr.io,marketplace.gcr.io,us.gcr.io,docker.pkg.dev,us-docker.pkg.dev,eu-docker.pkg.dev,asia-docker.pkg.dev ExecStart=/etc/gcer/startup.sh ExecStop=/usr/bin/docker stop rstudio ExecStopPost=/usr/bin/docker rm rstudio diff --git a/inst/startupscripts/rstudio-noauth.sh b/inst/startupscripts/rstudio-noauth.sh index a04c781..4659714 100644 --- a/inst/startupscripts/rstudio-noauth.sh +++ b/inst/startupscripts/rstudio-noauth.sh @@ -11,10 +11,23 @@ GCER_DOCKER_IMAGE=$(curl http://metadata.google.internal/computeMetadata/v1/inst echo "Docker image: $GCER_DOCKER_IMAGE" +if [ -d /home/gcer ]; +then + chmod 775 /home/gcer + vol_code="-v /home/gcer:/home/gcer" +fi +# Need to mount in / because of filesystem noexec +# https://cloud.google.com/container-optimized-os/docs/concepts/security +mkdir -p /R/library +chown gcer:gcer -R /R +vol_code="${vol_code} -v /R:/R" + # as per https://www.rocker-project.org/use/managing_users/ docker run -p 8787:8787 \ -e ROOT=TRUE \ - -e USER=rstudio -e DISABLE_AUTH=true \ + -e USER=gcer \ + ${vol_code} \ + -e DISABLE_AUTH=true \ --name=rstudio \ --privileged=true \ $GCER_DOCKER_IMAGE \ No newline at end of file