You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: content/docs/core.mdx
-6
Original file line number
Diff line number
Diff line change
@@ -17,12 +17,6 @@ import TabItem from '@theme/TabItem';
17
17
18
18
# Pomerium Core (Server)
19
19
20
-
:::note
21
-
22
-
If you are new to Pomerium, this is probably what you are looking for.
23
-
24
-
:::
25
-
26
20
Pomerium Core (sometimes referred to as _Pomerium Open Source_) is the primary server component. Pomerium Core is open source, and all other components build on top of it.
description: Get Pomerium up and running quickly with Docker.
11
+
keywords:
12
+
[
13
+
pomerium,
14
+
identity access proxy,
15
+
oidc,
16
+
docker,
17
+
reverse proxy,
18
+
containers,
19
+
identity aware proxy,
20
+
quickstart pomerium,
21
+
docker,
22
+
docker-compose,
23
+
]
24
+
---
25
+
26
+
import ConfigDocker from '@site/content/examples/config/config.docker.yaml.md'; import DockerCompose from '@site/content/examples/docker/basic.docker-compose.yml.md';
27
+
28
+
# Run Pomerium Core With Docker
29
+
30
+
Run Pomerium Core with Docker containers in **under 5 minutes**.
31
+
32
+
The Core quickstart uses Pomerium's [**Hosted Authenticate Service**](/docs/capabilities/hosted-authenticate-service), but you can also configure a [**self-hosted authenticate service**](/docs/capabilities/self-hosted-authenticate-service) to integrate with Pomerium.
33
+
34
+
## Prerequisites
35
+
36
+
[Docker] and [Docker Compose]
37
+
38
+
## Configure Pomerium
39
+
40
+
Create a `config.yaml` file in the root of your project.
Create a `docker-compose.yaml` file in the root of your project.
51
+
52
+
Add the configuration below to `docker-compose.yaml`:
53
+
54
+
<DockerCompose />
55
+
56
+
## Run Docker Compose
57
+
58
+
```bash
59
+
docker compose up
60
+
```
61
+
62
+
Access the **verify route** you built in your policy: `https://verify.localhost.pomerium.io`
63
+
64
+
If you get a self-signed certificate warning, see [Handle Self-Signed Certificate Warning](/docs/troubleshooting#handle-self-signed-certificate-warning) to bypass it.
65
+
66
+
You should be redirected to the **verify** service. You'll see a page like this:
67
+
68
+

69
+
70
+
Although identity verification failed, you successfully integrated Pomerium with the upstream verify service.
71
+
72
+
:::tip
73
+
74
+
Because this guide doesn't include a [signing key](/docs/reference/signing-key) in the configuration, identity verification will fail.
75
+
76
+
See [Identity Verification](/docs/capabilities/getting-users-identity) for more information on how Pomerium can use JWTs for authentication.
77
+
78
+
:::
79
+
80
+
## Next Steps
81
+
82
+
If you want to [try Enterprise](https://www.pomerium.com/enterprise-sales/), check out the [Enterprise with Docker quickstart](/docs/enterprise/quickstart).
83
+
84
+
If you want to try connecting Pomerium with other services, see some of our [Guides](/docs/guides).
85
+
86
+
**Did you finish this quickstart guide?** We'd love to hear what you think. Get in touch with us on our [Discuss forum](https://discuss.pomerium.com/), message us on [Twitter](https://twitter.com/pomerium_io), [LinkedIn](https://www.linkedin.com/company/pomerium-inc), or check out our [Community](https://www.pomerium.com/docs/community) page.
87
+
88
+
:::caution
89
+
90
+
This is a test environment! If you followed all the steps in this doc your Pomerium environment is not using trusted certificates. Remember to use a valid certificate solution before moving this configuration to a production environment. See [Certificates](/docs/reference/certificates) for more information.
Run Pomerium Core with Docker containers in **under 5 minutes**.
29
+
The Zero Quickstart shows you how to install and run Pomerium Zero in a Docker container.
31
30
32
-
The Core quickstart uses Pomerium's [**Hosted Authenticate Service**](/docs/capabilities/hosted-authenticate-service), but you can also configure a [**self-hosted authenticate service**](/docs/capabilities/self-hosted-authenticate-service) to integrate with Pomerium.
31
+
## Before you start
33
32
34
-
## Prerequisites
33
+
- Install [Docker](https://docs.docker.com/install/) and [Docker Compose](https://docs.docker.com/compose/install/)
34
+
- Create a (free) [**Pomerium Zero account**](https://console.pomerium.app/create-account)
35
35
36
-
[Docker] and [Docker Compose]
36
+
## Get Pomerium Zero configuration
37
37
38
-
## Configure Pomerium
38
+
After you create an account, you'll be directed to the Zero onboarding screen. In the onboarding screen, select the **Docker** tab and copy the Docker Compose configuration.
39
39
40
-
Create a `config.yaml` file in the root of your project.
40
+
(If you selected **Finish** before copying the Docker configuration, we've provided a copy below.)
- **Line 8**: Replace `CLUSTER_TOKEN` with the cluster token generated for you in the onboarding config
77
+
- **Line 15**: Replace `CLUSTER_STARTER_SUBDOMAIN` with your generated starter subdomain
78
+
79
+
:::tip Where's my **Starter Domain?**
49
80
50
-
Create a `docker-compose.yaml` file in the root of your project.
81
+
You can find your **Starter Domain** at the top of the Zero Console navigation bar:
51
82
52
-
Add the configuration below to `docker-compose.yaml`:
83
+

53
84
54
-
<DockerCompose />
85
+
:::
86
+
87
+
## Connect to Pomerium Zero
55
88
56
-
## Run Docker Compose
89
+
Next, deploy Pomerium with the following command:
57
90
58
91
```bash
59
-
docker compose up
92
+
docker compose up -d
60
93
```
61
94
62
-
Access the **verify route**you built in your policy: `https://verify.localhost.pomerium.io`
95
+
Pomerium will deploy and run in a special "Zero-managed" mode. In Zero-managed mode, Pomerium connects to the Pomerium Zero cloud service, a remote control plane where you can manage your deployments and configuration.
63
96
64
-
If you get a self-signed certificate warning, see [Handle Self-Signed Certificate Warning](/docs/troubleshooting#handle-self-signed-certificate-warning) to bypass it.
97
+
If your Pomerium deployment connects to the cloud successfully, Pomerium Zero will notify you in the onboarding screen:
65
98
66
-
You should be redirected to the **verify** service. You'll see a page like this:
99
+

Once you've connected, select **Finish**. You'll be directed to the Zero Console.
69
102
70
-
Although identity verification failed, you successfully integrated Pomerium with the upstream verify service.
103
+
## Connect to upstream services
71
104
72
-
:::tip
105
+
In the Zero Console, we've provisioned two starter routes, **SSH** and **Verify**, that come with their own DNS records and TLS certificates:
73
106
74
-
Because this guide doesn't include a [signing key](/docs/reference/signing-key) in the configuration, identity verification will fail.
107
+

75
108
76
-
See [Identity Verification](/docs/capabilities/getting-users-identity) for more information on how Pomerium can use JWTs for authentication.
109
+
### Connect to Verify
77
110
78
-
:::
111
+
The first service you'll access is the **Verify** app. This hosted demo app is designed to verify a user's identity, but it also serves as a way to validate that Pomerium is up and running as expected.
79
112
80
-
## Next Steps
113
+
In the Zero Console, select the **From** URL for the Verify app.
81
114
82
-
If you want to [try Enterprise](https://www.pomerium.com/enterprise-sales/), check out the [Enterprise with Docker quickstart](/docs/enterprise/quickstart).
115
+
You should land on the Verify page:
83
116
84
-
If you want to try connecting Pomerium with other services, see some of our [Guides](/docs/guides).
117
+

85
118
86
-
**Did you finish this quickstart guide?** We'd love to hear what you think. Get in touch with us on our [Discuss forum](https://discuss.pomerium.com/), message us on [Twitter](https://twitter.com/pomerium_io), [LinkedIn](https://www.linkedin.com/company/pomerium-inc), or check out our [Community](https://www.pomerium.com/docs/community) page.
119
+
### Connect to SSH
87
120
88
-
:::caution
121
+
The demo SSH route connects to a remote server that you can use to test SSH connections in Pomerium Zero.
89
122
90
-
This is a test environment! If you followed all the steps in this doc your Pomerium environment is not using trusted certificates. Remember to use a valid certificate solution before moving this configuration to a production environment. See [Certificates](/docs/guides/certificates) for more information.
123
+
:::note Install Pomerium CLI
124
+
125
+
You need the Pomerium CLI client to connect to services like **SSH** over a TCP connection. See the [**Pomerium CLI**](/docs/clients/pomerium-cli) page for installation instructions.
A successful request results in a response similar to the one below:
142
+
143
+
```bash
144
+
Warning: Permanently added 'ssh-demo.pomerium.com' (ED25519) to the list of known hosts.
145
+
This is an SSH honeypot. Everything is logged and monitored.
146
+
```
147
+
148
+
## Review authorization policy
149
+
150
+
Select the **Policies** tab. In the policies table, you'll notice the **Any Authenticated User** policy.
151
+
152
+

153
+
154
+
This is a simple policy that instructs Pomerium to allow all requests for authenticated users or service accounts. Because you authenticated successfully against our hosted identity provider, Pomerium granted you access to both the SSH and Verify services.
155
+
156
+
## Review certificates
157
+
158
+
Pomerium automatically provisions and manages TLS certificates issued by ZeroSSL to secure the starter routes in your cluster, and any routes you may build that use your cluster's starter domain.
159
+
160
+
To see certificates in your cluster, go to the **Certificates** tab:
161
+
162
+

163
+
164
+
## Next Steps
165
+
166
+
### Add a [**Custom Domain**](/docs/capabilities/custom-domains)
0 commit comments