Skip to content

Commit f22c24a

Browse files
committed
chore(ssh): add page for managing ssh keys
1 parent b6c3993 commit f22c24a

3 files changed

Lines changed: 58 additions & 16 deletions

File tree

mkdocs.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ pages:
3232
- Using Workflow:
3333
- Command Line Interface: using-workflow/cli.md
3434
- Users and Registration: using-workflow/users-and-registration.md
35+
- User SSH Keys: using-workflow/user-ssh-keys.md
3536
- Applications:
3637
- Deploying Apps: applications/deploying-apps.md
3738
- Buildpacks: applications/using-buildpacks.md

src/applications/deploying-apps.md

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ For example, if your application persists state to the local filesystem -- commo
1010

1111
Fortunately, most modern applications feature a stateless application tier that can scale horizontally inside Deis.
1212

13-
1413
## Login to the Controller
1514

1615
!!! important
@@ -26,21 +25,6 @@ password:
2625
Logged in as deis
2726
```
2827

29-
## Upload Your SSH Public Key
30-
31-
If you plan on using `git push` to deploy applications to Deis, you must provide your SSH public key. Use the `deis keys:add` command to upload your default SSH public key, usually one of:
32-
33-
* ~/.ssh/id_rsa.pub
34-
* ~/.ssh/id_dsa.pub
35-
36-
```
37-
$ deis keys:add
38-
Found the following SSH public keys:
39-
1) id_rsa.pub
40-
Which would you like to use with Deis? 1
41-
Uploading /Users/myuser/.ssh/id_rsa.pub to Deis... done
42-
```
43-
4428
## Select a Build Process
4529

4630
Deis supports three different ways of building applications:
Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
# Users and SSH Keys
2+
3+
For **Dockerfile** and **Buildpack** based application deploys via `git push`, Deis Workflow identifies users via SSH
4+
keys. SSH keys are pushed to the platform and must be unique to each user. Users may have multiple SSH keys as needed.
5+
6+
## Generate an SSH Key
7+
8+
If you do not already have an SSH key or would like to create a new key for Deis Workflow, generate a new key using
9+
`ssh-keygen`:
10+
11+
```
12+
$ ssh-keygen -f ~/.ssh/id_deis -t rsa
13+
Generating public/private rsa key pair.
14+
Enter passphrase (empty for no passphrase):
15+
Enter same passphrase again:
16+
Your identification has been saved in /Users/admin/.ssh/id_deis.
17+
Your public key has been saved in /Users/admin/.ssh/id_deis.pub.
18+
The key fingerprint is:
19+
3d:ac:1f:f4:83:f7:64:51:c1:7e:7f:80:b6:70:36:c9 admin@plinth-23437.local
20+
The key's randomart image is:
21+
+--[ RSA 2048]----+
22+
| .. |
23+
| ..|
24+
| . o. .|
25+
| o. E .o.|
26+
| S == o..o|
27+
| o +. .o|
28+
| . o + o .|
29+
| . o = |
30+
| . . |
31+
+-----------------+
32+
```
33+
34+
## Adding and Removing SSH Keys
35+
36+
By publishing the **public** half of your SSH key to Deis Workflow the component responsible for receiving `git push`
37+
will be able to authenticate the user and ensure that they have access to the destination application.
38+
39+
```
40+
$ deis keys:add ~/.ssh/id_deis.pub
41+
Uploading id_deis.pub to deis... done
42+
```
43+
44+
You can always view the keys associated with your user as well:
45+
46+
```
47+
$ deis keys:list
48+
=== admin Keys
49+
admin@plinth-23437.local ssh-rsa AAAAB3Nz...3437.local
50+
admin@subgenius.local ssh-rsa AAAAB3Nz...nius.local
51+
```
52+
53+
Remove keys by their name:
54+
```
55+
$ deis keys:remove admin@plinth-23437.local
56+
Removing admin@plinth-23437.local SSH Key... don
57+
```

0 commit comments

Comments
 (0)