Sha256: 922dfbf779ea48c47b89494ff82ad4f7e2c617d64f4af0cadf8b9aa9533ff26a

Contents?: true

Size: 798 Bytes

Versions: 7

Compression:

Stored size: 798 Bytes

Contents

---
title: Service
categories: dsl
---

## Example

Here's an example of a Service.

.kubes/resources/web/service.rb

```ruby
name "demo-web"
labels(role: "web")
namespace "default"

# Optional since these are the defaults
# port 80
# targetPort 80
#
# type "NodePort"
```

Produces:

.kubes/output/web/service.yaml

```yaml
---
apiVersion: v1
kind: Service
metadata:
  name: demo-web
  labels:
    app: demo
  namespace: demo
spec:
  ports:
  - port: 80
    protocol: TCP
    targetPort: 8080
  selector:
    app: demo
  type: NodePort
```

## DSL Methods

Here's a list of more common methods:

* nodePort
* port
* portName: Note this field doesn't match the original field name. It's more qualified.
* ports
* protocol
* selector
* targetPort
* type

{% include dsl/methods.md name="service" %}

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
kubes-0.2.6 docs/_docs/dsl/resources/service.md
kubes-0.2.5 docs/_docs/dsl/resources/service.md
kubes-0.2.4 docs/_docs/dsl/resources/service.md
kubes-0.2.3 docs/_docs/dsl/resources/service.md
kubes-0.2.2 docs/_docs/dsl/resources/service.md
kubes-0.2.1 docs/_docs/dsl/resources/service.md
kubes-0.2.0 docs/_docs/dsl/resources/service.md