-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.html
More file actions
375 lines (375 loc) · 26.2 KB
/
index.html
File metadata and controls
375 lines (375 loc) · 26.2 KB
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
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="stylesheet" href="README.css" />
<title>Studio Base - Installation</title>
</head>
<body>
<div>
<img src="vertigis-studio-logo.svg" alt="Logo" class="logo" />
</div>
<h1>Studio Base - Installation</h1>
<p class="date">
Updated on: Thu Apr 16 20:01:26 PDT 2026
</p>
<nav>
<h2>Table of Contents</h2>
<ul>
<li><a href="#links" id="toc-links">Links</a></li>
<li><a href="#reference-guides"
id="toc-reference-guides">Reference Guides</a></li>
<li><a href="#vertigis-studio-base-an-introduction"
id="toc-vertigis-studio-base-an-introduction">VertiGIS
Studio-Base: An Introduction</a>
<ul>
<li><a href="#why-use-vertigis-studio-base"
id="toc-why-use-vertigis-studio-base">Why Use VertiGIS
Studio-Base?</a></li>
<li><a href="#system-requirements"
id="toc-system-requirements">System Requirements</a></li>
<li><a href="#preparation" id="toc-preparation">Preparation</a>
<ul>
<li><a href="#account-id-and-registry-credentials"
id="toc-account-id-and-registry-credentials">Account ID and
Registry Credentials</a></li>
<li><a href="#linux-machine" id="toc-linux-machine">Linux
Machine</a></li>
<li><a href="#front-end-url" id="toc-front-end-url">Front-End
URL</a></li>
<li><a href="#arcgis-portal-and-application-registration"
id="toc-arcgis-portal-and-application-registration">ArcGIS
Portal and Application Registration</a></li>
</ul></li>
<li><a href="#deployment-overview"
id="toc-deployment-overview">Deployment Overview</a></li>
<li><a href="#on-windows-install-ssh-and-supporting-tools"
id="toc-on-windows-install-ssh-and-supporting-tools">On Windows:
Install SSH and Supporting Tools</a></li>
<li><a href="#on-windows-testing-with-docker-desktop-and-wsl"
id="toc-on-windows-testing-with-docker-desktop-and-wsl">On
Windows: Testing with Docker Desktop and WSL</a></li>
<li><a href="#on-remote-setting-up-ssh"
id="toc-on-remote-setting-up-ssh">On Remote: Setting up
SSH</a></li>
<li><a href="#on-remote-remote-in-via-ssh"
id="toc-on-remote-remote-in-via-ssh">On Remote: Remote in via
SSH</a></li>
<li><a href="#on-linux-host-get-the-package"
id="toc-on-linux-host-get-the-package">On Linux Host: Get the
Package</a></li>
<li><a href="#on-remote-activate-the-product"
id="toc-on-remote-activate-the-product">On Remote: Activate the
Product</a></li>
<li><a href="#on-linux-host-initial-setup"
id="toc-on-linux-host-initial-setup">On Linux Host: Initial
Setup</a></li>
<li><a href="#on-linux-host-updating"
id="toc-on-linux-host-updating">On Linux Host: Updating</a></li>
<li><a href="#check-list" id="toc-check-list">Check
List</a></li>
</ul></li>
</ul>
</nav>
<h2 id="links">Links</h2>
<ul>
<li><a
href="https://github.com/vertigis/studio-base/releases/v1.1.1016.325503-r24545444523">This
Release</a> ( v1.1.1016.325503-r24545444523 )
<ul>
<li><a
href="https://github.com/vertigis/studio-base/pkgs/container/studio%2fbase/803025746?tag=v1.1.1016.325503-r24545444523">Image</a></li>
<li><a href="https://github.com/">Installation Guide</a></li>
<li><a
href="https://github.com/vertigis/studio-base-internal/archive/refs/tags/v0-pr-13249732233.zip">Deployment
Package (ZIP)</a></li>
<li><a
href="https://github.com/vertigis/studio-base-internal/archive/refs/tags/v0-pr-13249732233.tar.gz">Deployment
Package (TGZ)</a></li>
</ul></li>
<li><a
href="https://github.com/vertigis/studio-base/releases">Releases</a></li>
<li><a
href="https://github.com/vertigis/studio-base/pkgs/container/studio%2fbase">Images</a></li>
<li><a
href="https://github.com/vertigis/studio-base">Repository</a></li>
<li><a href="https://vertigis.github.io/studio-base/">Site</a></li>
</ul>
<h2 id="reference-guides">Reference Guides</h2>
<ul>
<li><a href="https://docs.docker.com/get-started/">Docker — Getting
Started</a></li>
<li><a href="https://docs.docker.com/compose/gettingstarted/">Docker
Compose — Getting Started</a></li>
<li><a href="https://www.ssh.com/academy/ssh">SSH Tutorial</a></li>
<li><a
href="https://learn.microsoft.com/en-us/windows-server/administration/openssh/openssh_overview">SSH
Tutorial — Microsoft Learn</a></li>
<li><a href="https://code.visualstudio.com/docs/remote/ssh">SSH and
VS Code</a></li>
</ul>
<h1 id="vertigis-studio-base-an-introduction">VertiGIS Studio-Base:
An Introduction</h1>
<p>VertiGIS Studio-Base refers to the deployment of VertiGIS Studio
using container technology, specifically Docker, on a Linux
operating system. It provides a structured way to install and run
VertiGIS Studio, which is designed for developing GIS applications
that integrate with Esri’s ArcGIS Portal.</p>
<p>The setup involves preparing a Linux machine, obtaining necessary
account credentials for VertiGIS and GitHub (for image access), and
configuring the deployment using a <code>docker-compose.yml</code>
file. The package includes tools and scripts to aid in installation,
activation, and updates.</p>
<h2 id="why-use-vertigis-studio-base">Why Use VertiGIS
Studio-Base?</h2>
<p>Deploying VertiGIS Studio using the Studio-Base package offers
several advantages focused on a managed and reproducible
environment:</p>
<ul>
<li><strong>Standardized Deployment:</strong> Utilizes Docker and
Docker Compose for a consistent setup process across different Linux
machines that meet the system requirements (specific Ubuntu or
Debian distributions).</li>
<li><strong>Defined Operating Environment:</strong> Requires a
specific Linux distribution, ensuring that the software runs in a
known and tested environment.</li>
<li><strong>Integrated Ingress Management:</strong> The deployment
package includes Traefik as an ingress proxy, demonstrating a method
for managing external access to the Studio application.</li>
<li><strong>Configuration-Driven Setup:</strong> Key parameters such
as the front-end URL, VertiGIS Account ID, and ArcGIS Portal details
are managed through the <code>docker-compose.yml</code> file,
centralizing configuration.</li>
<li><strong>Streamlined Installation and Activation:</strong>
Provides scripts and a defined process for getting the necessary
tools, activating the product, and starting the VertiGIS Studio
services.</li>
<li><strong>Clear Update Path:</strong> Offers commands for pulling
the latest images and updating the running deployment.</li>
<li><strong>ArcGIS Integration:</strong> The setup process
explicitly includes steps for registering the application with an
ArcGIS Portal, highlighting its core integration.</li>
</ul>
<h2 id="system-requirements">System Requirements</h2>
<table>
<colgroup>
<col style="width: 14%" />
<col style="width: 85%" />
</colgroup>
<thead>
<tr class="header">
<th>Requirement</th>
<th>Spec</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td>OS</td>
<td>Linux</td>
</tr>
<tr class="even">
<td>Distribution</td>
<td>Ubuntu 24.04, Ubuntu 22.04, or Debian 12 (bookworm)</td>
</tr>
<tr class="odd">
<td>Memory</td>
<td>4 GB Minimum, 8 GB Preferred</td>
</tr>
<tr class="even">
<td>Disk</td>
<td>16 GB Free</td>
</tr>
</tbody>
</table>
<h2 id="preparation">Preparation</h2>
<p>In order to run VertiGIS Studio in containers, there are a few
prerequisites that should be satisfied. Before you begin, please
have the following at hand:</p>
<h3 id="account-id-and-registry-credentials">Account ID and Registry
Credentials</h3>
<p>We require an appropriate license to run our software, but also,
you will need registry credentials to pull down the software. Our
support can help you with finding the following information:</p>
<ul>
<li>VertiGIS Account ID</li>
<li>GitHub
<ul>
<li>Account</li>
<li>Permissions to ghcr.io/vertigis/studio/base</li>
</ul></li>
</ul>
<h3 id="linux-machine">Linux Machine</h3>
<p>We require Linux to run VertiGIS Studio in containers. You must
have a suitable distribution/version of Linux installed on an
appropriately resourced machine. Please review the system
requirements. We suggest using this Linux machine as a pure Docker
host. In other words, do not install software directly on the host
system.</p>
<h3 id="front-end-url">Front-End URL</h3>
<p>The front-end URL for the software’s hosting location is a
required configuration. Multiple internal components utilize this
value for proper functionality.</p>
<h3 id="arcgis-portal-and-application-registration">ArcGIS Portal
and Application Registration</h3>
<p>Go to your portal and create a web application:</p>
<ol type="1">
<li>Register this application (enable OAUTH2).</li>
<li>Provide a Redirect URL (use the Front-End URL).</li>
<li>Note the App ID.</li>
</ol>
<h2 id="deployment-overview">Deployment Overview</h2>
<p>The primary part of the installation occurs on the Linux machine
you have provisioned for this task. You can use Windows as a means
to remotely administer your Linux system.</p>
<p>The package includes an ingress proxy (Traefik) and demonstrates
how to use the ingress mechanism. If you are using Windows, we
suggest enabling ACME on your Enterprise CA as this will be the
easiest way to acquire Web Server certificates through the ingress
proxy.</p>
<h2 id="on-windows-install-ssh-and-supporting-tools">On Windows:
Install SSH and Supporting Tools</h2>
<p>If using Windows to remotely administer your Linux environments,
you will need a variety of tools. We suggest using a full-featured
SSH client like VS Code to perform administrative tasks. VS Code
supports remote file editing as well as remote command
execution.</p>
<div class="sourceCode" id="cb1"><pre
class="sourceCode powershell"><code class="sourceCode powershell"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="co"># If not already done, install supporting tools</span></span>
<span id="cb1-2"><a href="#cb1-2" aria-hidden="true" tabindex="-1"></a><span class="op">></span> Add<span class="op">-</span>WindowsCapability <span class="op">-</span>Online <span class="op">-</span>Name OpenSSH<span class="op">.</span><span class="fu">Client</span></span>
<span id="cb1-3"><a href="#cb1-3" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb1-4"><a href="#cb1-4" aria-hidden="true" tabindex="-1"></a><span class="co"># If desired, install vscode</span></span>
<span id="cb1-5"><a href="#cb1-5" aria-hidden="true" tabindex="-1"></a><span class="op">></span> winget install vscode</span>
<span id="cb1-6"><a href="#cb1-6" aria-hidden="true" tabindex="-1"></a><span class="op">></span> code <span class="op">--</span>install<span class="op">-</span>extension ms<span class="op">-</span>vscode<span class="op">-</span>remote<span class="op">.</span><span class="fu">remote</span><span class="op">-</span>ssh</span></code></pre></div>
<p>You can do this via the GUI as well:</p>
<ul>
<li>Goto Windows Optional Features -> Add an Optional Feature:
<ul>
<li>Install OpenSSH Client</li>
</ul></li>
<li>Optionally, download and install the following:
<ul>
<li><a href="https://code.visualstudio.com/download">VS
Code</a></li>
<li>Install the Remote SSH Extension</li>
</ul></li>
</ul>
<h2 id="on-windows-testing-with-docker-desktop-and-wsl">On Windows:
Testing with Docker Desktop and WSL</h2>
<p>If you wish to test with Docker Desktop, you will need to
following installations instructions (see below). Please note that
Docker Desktop and WSL environments are not production grade
environments. However, these tools are extremely useful ways of
testing locally. - <a href="https://docs.docker.com/desktop/">Docker
Desktop</a> - <a
href="https://learn.microsoft.com/en-us/windows/wsl/install">WSL2</a></p>
<h2 id="on-remote-setting-up-ssh">On Remote: Setting up SSH</h2>
<div class="sourceCode" id="cb2"><pre
class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a><span class="co"># Create SSH key (we suggest using the defaults):</span></span>
<span id="cb2-2"><a href="#cb2-2" aria-hidden="true" tabindex="-1"></a><span class="co"># </span><span class="al">NOTE</span><span class="co">: Only do this once or if you want to generate new key.</span></span>
<span id="cb2-3"><a href="#cb2-3" aria-hidden="true" tabindex="-1"></a><span class="op">></span> ssh-keygen <span class="ex">-t</span> ed25519</span>
<span id="cb2-4"><a href="#cb2-4" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb2-5"><a href="#cb2-5" aria-hidden="true" tabindex="-1"></a><span class="co"># Register for passwordless login (optional but recommended)</span></span>
<span id="cb2-6"><a href="#cb2-6" aria-hidden="true" tabindex="-1"></a><span class="co"># If on Linux:</span></span>
<span id="cb2-7"><a href="#cb2-7" aria-hidden="true" tabindex="-1"></a><span class="op">></span> ssh-copy-id <span class="ex">user@host</span></span>
<span id="cb2-8"><a href="#cb2-8" aria-hidden="true" tabindex="-1"></a><span class="co"># If on Windows, you'll need to do this manually:</span></span>
<span id="cb2-9"><a href="#cb2-9" aria-hidden="true" tabindex="-1"></a><span class="op">></span> scp <span class="ex">%USERPROFILE%\.ssh\id_ed25519.pub</span> user@host:~</span>
<span id="cb2-10"><a href="#cb2-10" aria-hidden="true" tabindex="-1"></a><span class="op">></span> ssh <span class="ex">user@host</span></span>
<span id="cb2-11"><a href="#cb2-11" aria-hidden="true" tabindex="-1"></a><span class="op">></span> umask <span class="ex">077</span></span>
<span id="cb2-12"><a href="#cb2-12" aria-hidden="true" tabindex="-1"></a><span class="op">></span> mkdir <span class="ex">-p</span> .ssh</span>
<span id="cb2-13"><a href="#cb2-13" aria-hidden="true" tabindex="-1"></a><span class="op">></span> read <span class="ex">line</span> <span class="op"><</span> id_ed25519.pub</span>
<span id="cb2-14"><a href="#cb2-14" aria-hidden="true" tabindex="-1"></a><span class="op">></span> echo <span class="va">$line</span> <span class="op">>></span> .ssh/authorized_keys</span>
<span id="cb2-15"><a href="#cb2-15" aria-hidden="true" tabindex="-1"></a><span class="op">></span> rm <span class="ex">id_ed25519.pub</span></span>
<span id="cb2-16"><a href="#cb2-16" aria-hidden="true" tabindex="-1"></a><span class="op">></span> exit</span></code></pre></div>
<h2 id="on-remote-remote-in-via-ssh">On Remote: Remote in via
SSH</h2>
<div class="sourceCode" id="cb3"><pre
class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a><span class="co"># If using ssh directly:</span></span>
<span id="cb3-2"><a href="#cb3-2" aria-hidden="true" tabindex="-1"></a><span class="op">></span> ssh <span class="ex">user@host</span></span>
<span id="cb3-3"><a href="#cb3-3" aria-hidden="true" tabindex="-1"></a><span class="co"># If using vscode:</span></span>
<span id="cb3-4"><a href="#cb3-4" aria-hidden="true" tabindex="-1"></a><span class="op">></span> code <span class="ex">--remote</span> ssh-remote+user@host /home/user</span></code></pre></div>
<h2 id="on-linux-host-get-the-package">On Linux Host: Get the
Package</h2>
<div class="sourceCode" id="cb4"><pre
class="sourceCode bash"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a><span class="co"># If desired, use curl:</span></span>
<span id="cb4-2"><a href="#cb4-2" aria-hidden="true" tabindex="-1"></a><span class="op">></span> mkdir <span class="ex">-p</span> ~/deploy-studio</span>
<span id="cb4-3"><a href="#cb4-3" aria-hidden="true" tabindex="-1"></a><span class="op">></span> cd <span class="ex">~/deploy-studio</span></span>
<span id="cb4-4"><a href="#cb4-4" aria-hidden="true" tabindex="-1"></a><span class="op">></span> curl <span class="ex">-fsSL</span> https://github.com/vertigis/studio-base/archive/refs/tags/v1.1.1016.325503-r24545444523.tar.gz <span class="kw">|</span> <span class="fu">tar</span> <span class="at">-xz</span></span>
<span id="cb4-5"><a href="#cb4-5" aria-hidden="true" tabindex="-1"></a><span class="co"># If desired, use git:</span></span>
<span id="cb4-6"><a href="#cb4-6" aria-hidden="true" tabindex="-1"></a><span class="op">></span> git <span class="ex">clone</span> <span class="at">--depth</span> 1 <span class="at">--branch</span> v1.1.1016.325503-r24545444523 https://github.com/vertigis/studio-base ~/deploy-studio</span>
<span id="cb4-7"><a href="#cb4-7" aria-hidden="true" tabindex="-1"></a><span class="op">></span> cd <span class="ex">~/deploy-studio</span></span>
<span id="cb4-8"><a href="#cb4-8" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb4-9"><a href="#cb4-9" aria-hidden="true" tabindex="-1"></a><span class="co"># Install the Docker Engine:</span></span>
<span id="cb4-10"><a href="#cb4-10" aria-hidden="true" tabindex="-1"></a><span class="op">></span> curl <span class="ex">-fsSL</span> https://get.docker.com <span class="at">-o</span> get-docker.sh</span>
<span id="cb4-11"><a href="#cb4-11" aria-hidden="true" tabindex="-1"></a><span class="op">></span> sudo <span class="fu">sh</span> ./get-docker.sh</span>
<span id="cb4-12"><a href="#cb4-12" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb4-13"><a href="#cb4-13" aria-hidden="true" tabindex="-1"></a><span class="co"># Add yourself to the docker group:</span></span>
<span id="cb4-14"><a href="#cb4-14" aria-hidden="true" tabindex="-1"></a><span class="op">></span> usermod <span class="ex">-aG</span> docker <span class="va">$USER</span></span>
<span id="cb4-15"><a href="#cb4-15" aria-hidden="true" tabindex="-1"></a><span class="op">></span> exec <span class="fu">sudo</span> su <span class="at">-</span> <span class="va">$USER</span></span></code></pre></div>
<h2 id="on-remote-activate-the-product">On Remote: Activate the
Product</h2>
<div class="sourceCode" id="cb5"><pre
class="sourceCode sh"><code class="sourceCode bash"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a><span class="co"># If session is local xterm, local vscode, or remote vscode:</span></span>
<span id="cb5-2"><a href="#cb5-2" aria-hidden="true" tabindex="-1"></a><span class="op">></span> cd <span class="ex">~/deploy-studio</span></span>
<span id="cb5-3"><a href="#cb5-3" aria-hidden="true" tabindex="-1"></a><span class="op">></span> ./tools.sh <span class="ex">activate</span></span>
<span id="cb5-4"><a href="#cb5-4" aria-hidden="true" tabindex="-1"></a><span class="co"># If session is remote through ssh:</span></span>
<span id="cb5-5"><a href="#cb5-5" aria-hidden="true" tabindex="-1"></a><span class="op">></span> ssh <span class="ex">-L</span> localhost:7780:localhost:7780 user@host ~/deploy-studio/tools activate</span></code></pre></div>
<h2 id="on-linux-host-initial-setup">On Linux Host: Initial
Setup</h2>
<div class="sourceCode" id="cb6"><pre
class="sourceCode bash"><code class="sourceCode bash"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a><span class="co"># Switch to the deployment folder</span></span>
<span id="cb6-2"><a href="#cb6-2" aria-hidden="true" tabindex="-1"></a><span class="op">></span> cd <span class="ex">~/deploy-studio</span></span>
<span id="cb6-3"><a href="#cb6-3" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb6-4"><a href="#cb6-4" aria-hidden="true" tabindex="-1"></a><span class="co"># If you need to discover your Enterprise Root certificates</span></span>
<span id="cb6-5"><a href="#cb6-5" aria-hidden="true" tabindex="-1"></a><span class="op">></span> ./tools.sh <span class="ex">extract-ca-certs</span></span>
<span id="cb6-6"><a href="#cb6-6" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb6-7"><a href="#cb6-7" aria-hidden="true" tabindex="-1"></a><span class="co"># Edit configuration for VertiGIS Studio</span></span>
<span id="cb6-8"><a href="#cb6-8" aria-hidden="true" tabindex="-1"></a><span class="co"># See checklist for what to edit.</span></span>
<span id="cb6-9"><a href="#cb6-9" aria-hidden="true" tabindex="-1"></a><span class="co"># If using a plain terminal, try one of these:</span></span>
<span id="cb6-10"><a href="#cb6-10" aria-hidden="true" tabindex="-1"></a><span class="op">></span> nano <span class="ex">docker-compose.yml</span></span>
<span id="cb6-11"><a href="#cb6-11" aria-hidden="true" tabindex="-1"></a><span class="op">></span> vi <span class="ex">docker-compose.yml</span></span>
<span id="cb6-12"><a href="#cb6-12" aria-hidden="true" tabindex="-1"></a><span class="co"># If using a GUI, try one of these:</span></span>
<span id="cb6-13"><a href="#cb6-13" aria-hidden="true" tabindex="-1"></a><span class="op">></span> code <span class="ex">docker-compose.yml</span> <span class="kw">&</span></span>
<span id="cb6-14"><a href="#cb6-14" aria-hidden="true" tabindex="-1"></a><span class="op">></span> gedit <span class="ex">docker-compose.yml</span> <span class="kw">&</span></span>
<span id="cb6-15"><a href="#cb6-15" aria-hidden="true" tabindex="-1"></a><span class="op">></span> kate <span class="ex">docker-compose.yml</span> <span class="kw">&</span></span>
<span id="cb6-16"><a href="#cb6-16" aria-hidden="true" tabindex="-1"></a><span class="op">></span> mousepad <span class="ex">docker-compose.yml</span> <span class="kw">&</span></span>
<span id="cb6-17"><a href="#cb6-17" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb6-18"><a href="#cb6-18" aria-hidden="true" tabindex="-1"></a><span class="co"># Gain access to images</span></span>
<span id="cb6-19"><a href="#cb6-19" aria-hidden="true" tabindex="-1"></a><span class="op">></span> gh <span class="ex">auth</span> login <span class="at">-w</span> <span class="at">-s</span> repo,read:packages</span>
<span id="cb6-20"><a href="#cb6-20" aria-hidden="true" tabindex="-1"></a><span class="op">></span> gh <span class="ex">auth</span> token <span class="kw">|</span> <span class="ex">docker</span> login ghcr.io <span class="at">-u</span> x-access-token <span class="at">--password-stdin</span></span>
<span id="cb6-21"><a href="#cb6-21" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb6-22"><a href="#cb6-22" aria-hidden="true" tabindex="-1"></a><span class="co"># Pull/Start VertiGIS Studio</span></span>
<span id="cb6-23"><a href="#cb6-23" aria-hidden="true" tabindex="-1"></a><span class="op">></span> docker <span class="ex">compose</span> up <span class="at">--wait</span> <span class="at">--build</span></span>
<span id="cb6-24"><a href="#cb6-24" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb6-25"><a href="#cb6-25" aria-hidden="true" tabindex="-1"></a><span class="co"># Optionally, deploy the VertiGIS Studio Printing Engine</span></span>
<span id="cb6-26"><a href="#cb6-26" aria-hidden="true" tabindex="-1"></a><span class="op">></span> docker <span class="bu">exec</span> vs-studio-main-1 util-deploy-printing-engine</span></code></pre></div>
<h2 id="on-linux-host-updating">On Linux Host: Updating</h2>
<div class="sourceCode" id="cb7"><pre
class="sourceCode bash"><code class="sourceCode bash"><span id="cb7-1"><a href="#cb7-1" aria-hidden="true" tabindex="-1"></a><span class="co"># Switch to the deployment folder</span></span>
<span id="cb7-2"><a href="#cb7-2" aria-hidden="true" tabindex="-1"></a><span class="op">></span> cd <span class="ex">~/deploy-studio</span></span>
<span id="cb7-3"><a href="#cb7-3" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb7-4"><a href="#cb7-4" aria-hidden="true" tabindex="-1"></a><span class="co"># If login has expired, gain access to images</span></span>
<span id="cb7-5"><a href="#cb7-5" aria-hidden="true" tabindex="-1"></a><span class="op">></span> gh <span class="ex">auth</span> login <span class="at">-w</span> <span class="at">-s</span> repo,read:packages</span>
<span id="cb7-6"><a href="#cb7-6" aria-hidden="true" tabindex="-1"></a><span class="op">></span> gh <span class="ex">auth</span> token <span class="kw">|</span> <span class="ex">docker</span> login ghcr.io <span class="at">-u</span> x-access-token <span class="at">--password-stdin</span></span>
<span id="cb7-7"><a href="#cb7-7" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb7-8"><a href="#cb7-8" aria-hidden="true" tabindex="-1"></a><span class="co"># Optionally, pull down VertiGIS Studio</span></span>
<span id="cb7-9"><a href="#cb7-9" aria-hidden="true" tabindex="-1"></a><span class="op">></span> docker <span class="ex">compose</span> pull</span>
<span id="cb7-10"><a href="#cb7-10" aria-hidden="true" tabindex="-1"></a><span class="co"># Then, upgrade VertiGIS Studio</span></span>
<span id="cb7-11"><a href="#cb7-11" aria-hidden="true" tabindex="-1"></a><span class="op">></span> docker <span class="ex">compose</span> up <span class="at">--wait</span> <span class="at">--build</span></span>
<span id="cb7-12"><a href="#cb7-12" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb7-13"><a href="#cb7-13" aria-hidden="true" tabindex="-1"></a><span class="co"># Optionally, hot refresh configuration</span></span>
<span id="cb7-14"><a href="#cb7-14" aria-hidden="true" tabindex="-1"></a><span class="op">></span> docker <span class="bu">exec</span> vs-studio-main-1 util-refresh</span></code></pre></div>
<h2 id="check-list">Check List</h2>
<ul>
<li>Editing docker.compose.yml:
<ul>
<li>Set the front-end URL via <code>FRONTEND_URL</code></li>
<li>Set the VertiGIS Account ID via
<code>VERTIGIS_ACCOUNT_ID</code></li>
<li>Set the ArcGIS Portal URL via
<code>ARCGIS_PORTAL_URL</code></li>
<li>Set the ArcGIS App ID via <code>ARCGIS_APP_ID</code></li>
</ul></li>
</ul>
</body>
</html>