-
Notifications
You must be signed in to change notification settings - Fork 0
/
01-mac.Rmd
239 lines (148 loc) · 8.07 KB
/
01-mac.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
# MacOS Installation {#macos .unnumbered}
<div class="alert alert-info" style="font-size:120%">
<b>NOTE</b>: <br>
This guide shows you how to install on MacOS via the `gdsr`
</div>
## Installation {.unnumbered}
### Requirements {.unlisted .unnumbered}
To be able to complete this guide, your machine will need to meet the following requirements:
1. A stable internet connection
2. ~10GB of space on your hard drive
3. MacOS version 10.13 or newer i.e. High Sierra, Mojave, Catalina or Big Sur. If you are unsure what version you are running click on the Apple icon in the top left of the screen and then **About this Mac**.
4. Mac hardware must be a 2010 model or newer
### Docker install steps {.unlisted .unnumbered}
1. Go to the [dockerhub website](https://hub.docker.com/editions/community/docker-ce-desktop-mac/).
2. Ensure you meet the criteria for download (it is the same as stated above) and then select 'Get Docker' button.
```{r fig1, fig.align = 'center', echo = FALSE}
knitr::include_graphics("figs/chp1/Figure1.png")
```
<br>
3. This will then download to your machine but may take some time. Once finished, to access this download go to **Finder** > **Downloads** > **Docker.dmg** and double click.
```{r fig2, fig.align = 'center', echo = FALSE}
knitr::include_graphics("figs/chp1/Figure2.png")
```
<br>
4. You should then be prompted to drag and drop this application into the applications folder like so:
```{r fig3, fig.align = 'center', echo = FALSE}
knitr::include_graphics("figs/chp1/Figure3.png")
```
You may get further windows asking for access to the program. To these you can click **Open** > **OK** > enter your account password and click **Install helper**
<br>
5. After you have done this, the whale icon should now show in your taskbar:
```{r fig4, fig.align = 'center', echo = FALSE}
knitr::include_graphics("figs/chp1/Figure4.png")
```
<br>
You have successfully downloaded Docker!
### Using Docker {.unlisted .unnumbered}
Now we have Docker installed we can use it to access Python and all the associated packages we need for the practicals
### Installing the GDSR environment {.unlisted .unnumbered}
1. Access your terminal: **Launchpad** > **Other** > **Terminal**
2. In a fresh line in the terminal type the following to install the GDSR environment container:
```shell
docker pull darribas/gdsr:1.0
```
```{r fig5, fig.align = 'center', echo = FALSE}
knitr::include_graphics("figs/chp1/Figure5.png")
```
<br>
3. This should now prompt a long download process that looks a bit like this:
```{r fig6, fig.align = 'center', echo = FALSE}
knitr::include_graphics("figs/chp1/Figure6.png")
```
Don't be alarmed if it seems to take a very long time.
<div class="alert alert-info" style="font-size:120%">
<b>IMPORTANT</b>: <br>
Make sure you are connected to the internet and it is a stable connection. This step involves the download of large amounts of data (ca. 5.5GB) so it might take a while. However, it only needs to be run once.
</div>
### Check success {.unlisted .unnumbered}
You will know the process has completed successfully when each line says *'Pull complete'* and the new line shows your machine name.
If everything has gone according to plan, you should see `darribas/gdsr:1.0` show up on your terminal when you type `docker image ls` (**NOTE** in the image below there are other containers that are not required, do not worry if you don't have those or slightly different values on the ID and the "CREATED" columns, the important bit is having `darribas/gdsr:1.0` listed):
```{r fig6ii, fig.align = 'center', echo = FALSE}
knitr::include_graphics("figs/chp1/Figure8.png")
```
<br>
## Running RStudio {.unnumbered}
The following sections cover how to spin up a session you have just installed, use it, and shut it down when you are done.
### Running the container {.unlisted .unnumbered}
1. In the new terminal line, type the following command to run the container:
`docker run -d -e PASSWORD=test123 -p 8787:8787 -v "${PWD}":/home/rstudio/work darribas/gdsr:1.0`
```{r fig7, fig.align = 'center', echo = FALSE}
knitr::include_graphics("figs/chp1/Figure7.png")
```
<br>
You have now started a RStudio session.
<div class="alert alert-info" style="font-size:120%">
<b>IMPORTANT</b>: <br>
Please do NOT close the terminal window until you are finished in this RStudio session
</div>
2. The following window will appear (If this doesn't happen, go to 5):
```{r fig10a, fig.align = 'center', echo = FALSE}
knitr::include_graphics("figs/chp1/Figure10a.png")
```
3. Go to *System Preferences* > *Security & Privacy*. The following window will appear:
```{r fig10b, fig.align = 'center', echo = FALSE}
knitr::include_graphics("figs/chp1/Figure10b.png")
```
4. Click the lock (shown above) and enter your password.
5. Now you can access the RStudio session. Go to your chosen web browser (e.g. Safari/Chrome) and type: `localhost:8787` into the search bar
```{r fig10, fig.align = 'center', echo = FALSE}
knitr::include_graphics("figs/chp1/Figure10.png")
```
6. The page that loads will prompt you for a username and password as shown above. Type the following (as on the figure above):
`username: rstudio`
`password: test123`
<br>
7. Now you are in RStudio Server, you can start coding or opening a new file. Please refer to [Rowe and Arribas-Bel (2021)](https://gdsl-ul.github.io/san/data-wrangling.html#introducing-r) for an introduction to the RStudio interface, R Script and R Notebook.
```{r fig11, fig.align = 'center', echo = FALSE}
knitr::include_graphics("figs/chp1/Figure11.png")
```
<br>
### Using a R Notebook {.unlisted .unnumbered}
- A R notebook is where you will run your code and can add text. The top header is called `YAML metadata` and each shaded box is called a kernel (or code chunk) contained within delimiters ` ```{r}` and ` ``` `.
- Type `1 + 1` into a code chunk. To run the code click the play icon as indicated below.
```{r fig12, fig.align = 'center', echo = FALSE}
knitr::include_graphics("figs/chp1/Figure12.png")
```
<br>
<div class="alert alert-info" style="font-size:120%">
<b>IMPORTANT</b>: <br>
Make sure you save your files by you want to keep **ONLY** _within_ the `work` folder, as this will ensure they are saved on your machine.
Everything saved outside the `work` folder will be _destroyed_ as soon as you shut down the session.
</div>
- You can access other files on your machine through the `work` folder in the Files Browser. From here you can navigate to your Documents and designated folder for this module.
```{r fig11a, fig.align = 'center', echo = FALSE}
knitr::include_graphics("figs/chp1/Figure11a.png")
```
```{r fig11b, fig.align = 'center', echo = FALSE}
knitr::include_graphics("figs/chp1/Figure11b.png")
```
```{r fig11c, fig.align = 'center', echo = FALSE}
knitr::include_graphics("figs/chp1/Figure11c.png")
```
Here I am navigating to the san folder that we have created for this module in my Downloads. You can replace this with the pathway to the folder you create for this module.
<br>
- You can save your notebook here using **File** > **Save As**
```{r fig13, fig.align = 'center', echo = FALSE}
knitr::include_graphics("figs/chp1/Figure13_new.png")
```
<br>
- And you can create new folders to organise your work
```{r fig14, fig.align = 'center', echo = FALSE}
knitr::include_graphics("figs/chp1/Figure14_new.png")
```
<br>
### Ending your session {.unlisted .unnumbered}
Once you have finished in your RStudio session and have saved all your work, you can end the session by closing your browser.
1) Run `docker ps`:
```{r fig16, fig.align = 'center', echo = FALSE}
knitr::include_graphics("figs/chp1/Figure16.png")
```
2) Then, type `docker container rm` or `docker container stop`, and copy the *CONTAINER ID* from the output above as shown here:
```{r fig16a, fig.align = 'center', echo = FALSE}
knitr::include_graphics("figs/chp1/Figure16a.png")
```
<br>
You can now safely shut the terminal window.
<br>
Next time you go to run a R Notebook you will NOT need to repeat the whole process as you have already installed Docker and the GDSR environment. Instead you can start from [Running the container] and carry on from there.