Skip to content

Commit

Permalink
Add docs for expose command
Browse files Browse the repository at this point in the history
  • Loading branch information
kyhavlov committed Jun 5, 2020
1 parent b874c8e commit ada9e2b
Show file tree
Hide file tree
Showing 3 changed files with 69 additions and 3 deletions.
2 changes: 1 addition & 1 deletion website/data/docs-navigation.js
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ export default [
'agent',
{ category: 'catalog', content: ['datacenters', 'nodes', 'services'] },
{ category: 'config', content: ['delete', 'list', 'read', 'write'] },
{ category: 'connect', content: ['ca', 'proxy', 'envoy'] },
{ category: 'connect', content: ['ca', 'proxy', 'envoy', 'expose'] },
'debug',
'event',
'exec',
Expand Down
64 changes: 64 additions & 0 deletions website/pages/docs/commands/connect/expose.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
---
layout: docs
page_title: 'Commands: Connect Expose'
sidebar_title: expose
description: >
The connect expose subcommand is used to expose a Connect-enabled service
through an Ingress gateway by modifying the gateway's configuration and adding
an intention to allow traffic from the gateway to the service.
---

# Consul Connect Expose

Command: `consul connect expose`

The connect expose subcommand is used to expose a Connect-enabled service
through an Ingress gateway by modifying the gateway's configuration and adding
an intention to allow traffic from the gateway to the service. See the
[Ingress gateway documentation](/docs/connect/ingress-gateway) for more information
about Ingress gateways.

```text
Usage: consul connect expose [options]
Exposes a Connect-enabled service through the given ingress gateway, using the
given protocol and port.
```

#### API Options

@include 'http_api_options_client.mdx'

@include 'http_api_options_server.mdx'

#### Expose Options

- `-ingress-gateway` - The name of the ingress gateway service to use. Required.

- `-port` - The listener port to use for the service on the Ingress gateway.
Required.

- `-protocol` - The protocol for the service. Defaults to 'tcp'. Optional.

- `-service` - The name of destination service to expose. Required.

## Examples

The example below shows using the `expose` command to make the `foo` service available
through the Ingress gateway service `ingress`. The protocol argument is optional and
defaults to `tcp` if not provided.

```shell-session
$ consul connect expose -service=foo -ingress-gateway=ingress -port 8888 -protocol=tcp
Successfully updated config entry for ingress service "ingress"
Successfully set up intention for "ingress" -> "foo"
```

Running the command again when the config entry/intention are already set up will result
in a no-op:

```shell-session
$ consul connect expose -service=foo -ingress-gateway=ingress -port 8888 -protocol=tcp
Service "foo" already exposed through listener with port 8888
Intention already exists for "ingress" -> "foo"
```
6 changes: 4 additions & 2 deletions website/pages/docs/commands/connect/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -35,8 +35,10 @@ Usage: consul connect <subcommand> [options] [args]
For more examples, ask for subcommand help or view the documentation.
Subcommands:
ca Interact with the Consul Connect Certificate Authority (CA)
proxy Runs a Consul Connect proxy
ca Interact with the Consul Connect Certificate Authority (CA)
envoy Runs or Configures Envoy as a Connect proxy
expose Expose a Connect-enabled service through an Ingress gateway
proxy Runs a Consul Connect proxy
```

For more information, examples, and usage about a subcommand, click on the name
Expand Down

0 comments on commit ada9e2b

Please sign in to comment.