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
+87-21Lines changed: 87 additions & 21 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,40 +5,106 @@ 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
+
## devspace
48
+
Defines your DevSpace including everything related to portForwarding, sync, and the release config.
49
+
50
+
### devspace.release
51
+
Defines how the DevSpace is deployed to your cluster. See [Type: Release](#type-release) for details.
52
+
53
+
### devspace.portForwarding
30
54
To access applications running inside a DevSpace, the DevSpace CLI allows to configure port forwardings. A port forwarding consists of the following:
31
55
-`resourceType` (currently only `pod` is supported)
32
56
-`labelSelector` (usually the release/app name)
33
57
- a list of `portMappings` (each specifying a `localPort` on localhost and a `remotePort` within the DevSpace)
34
58
35
59
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
60
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:
61
+
### devspace.sync
62
+
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
63
-`resourceType` (currently only `pod` is supported)
40
64
-`labelSelector` (usually the release/app name)
41
65
-`localSubPath` (relative to your local project root)
42
66
-`containerPath` (absolute path within your DevSpace)
67
+
-`excludePaths` (for excluding files/folders from sync in .gitignore syntax)
68
+
-`DownloadExcludePaths` (for excluding files/folders from download in .gitignore syntax)
69
+
-`UploadExcludePaths` (for excluding files/folders from upload in .gitignore syntax)
43
70
44
71
In the example above, the entire code within the project would be synchronized with the folder `/app` inside the DevSpace.
72
+
73
+
## image
74
+
An image is defined by:
75
+
-`name` of the image that is being pushed to the registry
76
+
-`tag` stating the latest tag pushed to the registry
77
+
-`buildTime` (time of the latest image build process, i.e. docker build)
78
+
79
+
## services
80
+
Defines additional services for your DevSpace.
81
+
82
+
### services.registry
83
+
The `registry` field specifies:
84
+
-`external` tells the DevSpace CLI to push to an external registry (format: myregistry.com:port)
85
+
-`internal` defines a private cluster-internal registry by defining a `release` for it
86
+
-`user` credentials (`username`, `password`) for pushing to / pulling from the registry
87
+
-`insecure` flag to allow pushing to registries without HTTPS
88
+
89
+
### services.tiller
90
+
The `tiller` service is defined by:
91
+
-`release` definition for tiller (see [Type: Release](#type-release))
92
+
-`appNamespaces` defining a list of namespace that tiller may deploy applications to
93
+
94
+
## cluster
95
+
The `cluster` field specifies:
96
+
-`useKubeConfig` (yes to use the credentials defined in $HOME/.kube/config)
97
+
98
+
If `useKubeConfig: false` is used, the following fields need to be specified:
99
+
-`apiServer` (Kubernetes API-Server URL)
100
+
-`caCert` (CaCert for the Kubernetes API-Server in PEM format)
101
+
-`user` specifying the following:
102
+
-`username`
103
+
-`clientCert` (PEM format)
104
+
-`clientKey` (PEM format)
105
+
106
+
## Type: Release
107
+
A `release` is specified through:
108
+
-`name` of the release
109
+
-`namespace` to deploy the release to
110
+
-`values` that are set during the deployment (contents of the values.yaml in helm)
The [.devspace/overwrite.yaml](#) is defined for every developer who wants to use a DevSpace for working on the respective project. 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.
27
+
28
+
**Note: You can easily re-configure your DevSpace by running `devspace init -r`. Therefore, changing this file manually is highly discouraged.**
0 commit comments