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: docs/docs/configuration/config.yaml.md
+89-21Lines changed: 89 additions & 21 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,40 +5,108 @@ title: /.devspace/config.yaml
5
5
This is an example of a [.devspace/config.yaml](#)
6
6
```yaml
7
7
version: v1
8
-
portForwarding:
9
-
- resourceType: pod
10
-
labelSelector:
11
-
release: my-app
12
-
portMappings:
13
-
- localPort: 3000
14
-
remotePort: 3000
15
-
- localPort: 8080
16
-
remotePort: 80
17
-
syncPath:
18
-
- resourceType: pod
19
-
labelSelector:
20
-
release: my-app
21
-
localSubPath: ./
22
-
containerPath: /app
23
-
registry:
24
-
secrets:
25
-
htpasswd: ""
8
+
devSpace:
9
+
release:
10
+
name: devspace-cloud-com
11
+
namespace: dev-gentele
12
+
portForwarding:
13
+
- resourceType: pod
14
+
labelSelector:
15
+
release: my-app
16
+
portMappings:
17
+
- localPort: 3000
18
+
remotePort: 3000
19
+
- localPort: 8080
20
+
remotePort: 80
21
+
sync:
22
+
- resourceType: pod
23
+
labelSelector:
24
+
release: my-app
25
+
localSubPath: ./
26
+
containerPath: /app
27
+
image:
28
+
name: devspace
29
+
services:
30
+
registry:
31
+
internal:
32
+
release:
33
+
name: devspace-registry
34
+
namespace: dev-gentele
35
+
user:
36
+
username: user-XXXXX
37
+
password: XXXXXXXXXX
38
+
tiller:
39
+
release:
40
+
namespace: dev-gentele
41
+
cluster:
42
+
useKubeConfig: true
43
+
26
44
```
27
45
A [.devspace/config.yaml](#) contains any public/shared configuration for running a DevSpace for the respective project. It is highly recommended to put this file under version control (e.g. git add).
28
46
29
-
## Port Forwarding
47
+
**Note: You can easily re-configure your DevSpace by running `devspace init -r`.**
48
+
49
+
## devspace
50
+
Defines your DevSpace including everything related to portForwarding, sync, and the release config.
51
+
52
+
### devspace.release
53
+
Defines how the DevSpace is deployed to your cluster. See [Type: Release](#type-release) for details.
54
+
55
+
### devspace.portForwarding
30
56
To access applications running inside a DevSpace, the DevSpace CLI allows to configure port forwardings. A port forwarding consists of the following:
31
57
-`resourceType` (currently only `pod` is supported)
32
58
-`labelSelector` (usually the release/app name)
33
59
- a list of `portMappings` (each specifying a `localPort` on localhost and a `remotePort` within the DevSpace)
34
60
35
61
In the example above, you could open `localhost:8080` inside your browser to see the output of the application listening on port 80 within your DevSpace.
36
62
37
-
## Sync Paths
38
-
To comfortably sync code to a DevSpace, the DevSpace CLI allows to configure sync paths. A sync path consists of the following:
63
+
### devspace.sync
64
+
To comfortably sync code to a DevSpace, the DevSpace CLI allows to configure real-time code synchronizations. A sync config consists of the following:
39
65
-`resourceType` (currently only `pod` is supported)
40
66
-`labelSelector` (usually the release/app name)
41
67
-`localSubPath` (relative to your local project root)
42
68
-`containerPath` (absolute path within your DevSpace)
69
+
-`excludePaths` (for excluding files/folders from sync in .gitignore syntax)
70
+
-`DownloadExcludePaths` (for excluding files/folders from download in .gitignore syntax)
71
+
-`UploadExcludePaths` (for excluding files/folders from upload in .gitignore syntax)
43
72
44
73
In the example above, the entire code within the project would be synchronized with the folder `/app` inside the DevSpace.
74
+
75
+
## image
76
+
An image is defined by:
77
+
-`name` of the image that is being pushed to the registry
78
+
-`tag` stating the latest tag pushed to the registry
79
+
-`buildTime` (time of the latest image build process, i.e. docker build)
80
+
81
+
## services
82
+
Defines additional services for your DevSpace.
83
+
84
+
### services.registry
85
+
The `registry` field specifies:
86
+
-`external` tells the DevSpace CLI to push to an external registry (format: myregistry.com:port)
87
+
-`internal` defines a private cluster-internal registry by defining a `release` for it
88
+
-`user` credentials (`username`, `password`) for pushing to / pulling from the registry
89
+
-`insecure` flag to allow pushing to registries without HTTPS
90
+
91
+
### services.tiller
92
+
The `tiller` service is defined by:
93
+
-`release` definition for tiller (see [Type: Release](#type-release))
94
+
-`appNamespaces` defining a list of namespace that tiller may deploy applications to
95
+
96
+
## cluster
97
+
The `cluster` field specifies:
98
+
-`useKubeConfig` (yes to use the credentials defined in $HOME/.kube/config)
99
+
100
+
If `useKubeConfig: false` is used, the following fields need to be specified:
101
+
-`apiServer` (Kubernetes API-Server URL)
102
+
-`caCert` (CaCert for the Kubernetes API-Server in PEM format)
103
+
-`user` specifying the following:
104
+
-`username`
105
+
-`clientCert` (PEM format)
106
+
-`clientKey` (PEM format)
107
+
108
+
## Type: Release
109
+
A `release` is specified through:
110
+
-`name` of the release
111
+
-`namespace` to deploy the release to
112
+
-`values` that are set during the deployment (contents of the values.yaml in helm)
The [.devspace/overwrite.yaml](#) allows you to define a config that overwrites the config values defined in [.devspace/config.yaml](config.yaml.html). It has the exact same format as the [.devspace/config.yaml](config.yaml.html).
6
+
7
+
**Note: This file should **never** be checked into a version control system. Therefore, the DevSpace CLI will automatically create a [.gitignore](#) file within [.devspace/](#) that tells git not to version this file.**
0 commit comments