@@ -88,13 +88,19 @@ code-server -r personalize.log
88
88
89
89
## JetBrains Gateway with SSH
90
90
91
- If your image
92
- [ includes a JetBrains IDE] ( ../admin/workspace-management/installing-jetbrains.md )
93
- and you've [ set up SSH access to Coder] ( ./ssh.md ) , you can use JetBrains Gateway
94
- to run a local JetBrains IDE connected to your Coder workspace.
91
+ [ Gateway] ( https://www.jetbrains.com/remote-development/gateway/ ) is JetBrains'
92
+ preferred remote development solution. Projector (the browser-based option) is
93
+ [ no longer recommended] ( https://lp.jetbrains.com/projector/ ) by JetBrains.
95
94
96
- Please note that:
95
+ > By default, Gateway will download the IDE from jetbrains.com into the
96
+ > Coder workspace during the setup. If you are air-gapped or want to leverage a
97
+ > JetBrains IDE in your workspace for faster setup, you can point to an
98
+ > already-installed JetBrains IDE. See the configuration at the end of this
99
+ > Gateway section.
97
100
101
+ Requirements:
102
+
103
+ - SSH access to Coder must [ already be configured] ( ./ssh.md )
98
104
- Your Coder workspace must be running. Gateway needs compute resources, so
99
105
monitor your resource usage on the Coder dashboard and adjust accordingly.
100
106
- If you use a premium JetBrains IDE (e.g., GoLand, IntelliJ IDEA Ultimate), you
@@ -115,38 +121,70 @@ Please note that:
115
121
116
122
![ Connect Gateway to SSH] ( ../assets/workspaces/gateway-connect-to-ssh.png )
117
123
118
- 1 . Enter your Coder workspace alias target in ** Host** (e.g.,
119
- ` coder.mark-python ` ), ` 22 ` in ** Port** , ` coder ` in ** User name** , and change
120
- ** Authentication Type** to ** OpenSSH config and authentication agent** . Leave
121
- the local port field blank. Click ** Test Connection** .
124
+ 1 . Enter your Coder workspace host name in ** Host** (e.g.,
125
+ ` coder.mark-intellij ` ), ` 22 ` in ** Port** , ` coder ` in ** User name** , and
126
+ change ** Authentication Type** to ** OpenSSH config and authentication
127
+ agent** . You can find the workspace host names in ` ~/.ssh/config ` . Leave the
128
+ local port field blank. Click ** Test Connection** .
122
129
123
- ![ Gateway SSH Configurations] ( ../assets/workspaces/gateway-ssh-configurations.png )
130
+ ![ Gateway SSH
131
+ Configurations] ( ../assets/workspaces/gateway-ssh-configurations.png )
124
132
125
- 1 . With your created configuration in the ** Connection ** chosen in the drop-down
126
- field, click ** Test Connection ** , then ** OK ** .
133
+ 1 . Choose your new connection from the drop-down and click Check Connection and
134
+ Continue
127
135
128
- ![ Test Gateway Connection ] ( ../assets/workspaces/gateway-test-connection .png )
136
+ ![ Connect to SSH ] ( ../assets/workspaces/connect-to-ssh .png )
129
137
130
- 1 . Select a JetBrains IDE from the IDE version drop-down. Choose the IDE
131
- installed in your Coder workspace, and click the folder icon and select your
132
- ` /home/coder ` directory in your Coder workspace.
138
+ 1 . The default behavior is to select a JetBrains IDE from the IDE version
139
+ drop-down and download it from jetbrain.com. Choose the IDE installed in your
140
+ Coder workspace, and click the folder icon and select your ` /home/coder `
141
+ directory in your Coder workspace.
133
142
134
- ![ Select JetBrains IDE and working directory] ( ../assets/workspaces/gateway-ide-and-project.png )
143
+ ![ Select JetBrains IDE and working
144
+ directory] ( ../assets/workspaces/gateway-ide-and-project.png )
135
145
136
- 1 . During this installation step, Gateway downloads the IDE and a JetBrains
137
- client. This may take a couple minutes .
146
+ If you ran ` remote-dev-server.sh ` (see note below) before starting the config
147
+ setup, JetBrains will detect your already installed IDE in the drop-down .
138
148
139
- ![ Gateway downloading IDE and client] ( ../assets/workspaces/gateway-download-client.png )
149
+ ![ Select JetBrains IDE and working
150
+ directory] ( ../assets/workspaces/gateway-ide-already-installed-and-project.png )
140
151
141
- ![ Code with Me starting up] ( ../assets/workspaces/gateway-code-with-me-loading.png )
152
+ 1 . Gateway will open the JetBrains client connected to the remotely installed
153
+ IDE.
142
154
143
- ![ A running JetBrains IDE in Gateway] ( ../assets/workspaces/gateway-ide-running.png )
155
+ ![ A running JetBrains IDE in
156
+ Gateway] ( ../assets/workspaces/gateway-ide-running.png )
144
157
145
- > If your Coder deployment is configured with ECDSA ssh key algorithm, change
146
- > the Gateway authentication type to ** Key pair** and create the Coder public
147
- > ssh key in your local ` ~/.ssh ` directory with ` ssh-keygen -y -f ` :
148
- >
149
- > ` ~/.ssh/coder_enterprise | tee ~/.ssh/coder_enterprise.pub `
158
+ ### Using an existing JetBrains installation in the workspace
159
+
160
+ If you would like to use an existing JetBrains IDE in a Coder workspace (or you
161
+ are air-gapped, and cannot reach jetbrains.com), run the following script in the
162
+ JetBrains IDE directory to point the default Gateway directory to the IDE
163
+ directory. This step must be done before configuring Gateway.
164
+
165
+ ``` sh
166
+ cd /opt/idea
167
+ ./remote-dev-server.sh registerBackendLocationForGateway
168
+ ```
169
+
170
+ [ Here is the JetBrains article] ( https://www.jetbrains.com/help/idea/remote-development-troubleshooting.html#setup:~:text=Can%20I%20point%20Remote%20Development%20to%20an%20existing%20IDE%20on%20my%20remote%20server%3F%20Is%20it%20possible%20to%20install%20IDE%20manually%3F )
171
+ explaining this IDE specification.
172
+
173
+ ### Alternative SSH key algorithms and Gateway
174
+
175
+ If your Coder deployment is configured with ECDSA ssh key algorithm, change the
176
+ Gateway authentication type to ** Key pair** and create the Coder public ssh key
177
+ in your local ` ~/.ssh ` directory with ` ssh-keygen -y -f ` :
178
+
179
+ ``` sh
180
+ ~ /.ssh/coder_enterprise | tee ~ /.ssh/coder_enterprise.pub
181
+ ```
182
+
183
+ ### Support & troubleshooting
184
+
185
+ [ This article] ( https://www.jetbrains.com/help/idea/remote-development-troubleshooting.html#setup )
186
+ outlines troubleshooting steps with Gateway. JetBrains product support including
187
+ their Issue Trackers [ are here.] ( https://www.jetbrains.com/support/ )
150
188
151
189
## JetBrains IDEs in the browser
152
190
0 commit comments