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
- `KUBERNETES_CONTRIB=mesos` - enables building of the contrib/mesos binaries
171
-
- `build/run.sh` - executes a command in the build container
172
-
- `build-go.sh` - builds the Go binaries for the current architecture (linux/amd64 when in a docker container)
172
+
For developers, it may be faster to [build locally](#build-locally).
173
173
174
174
1. [Optional] Build docker images
175
175
176
-
The following docker images are built as part of `./cluster/kube-up.sh`, but it may make sense to build them manually
177
-
the first time because it may take a while. In the future some of these may be hosted publicly, but you will always
178
-
need to at least rebuild the Kubernetes-Mesos image when using locally built binaries.
176
+
The following docker images are built as part of `./cluster/kube-up.sh`, but it may make sense to build them manually the first time because it may take a while.
179
177
180
-
Test image includes all the dependencies required for running e2e tests.
178
+
1. Test image includes all the dependencies required for running e2e tests.
181
179
182
-
```
183
-
./cluster/mesos/docker/test/build.sh
184
-
```
180
+
```
181
+
./cluster/mesos/docker/test/build.sh
182
+
```
185
183
186
-
Kubernetes-Mesos image includes the compiled linux binaries.
184
+
In the future, this image may be available to download. It doesn't contain anything specific to the current release, except its build dependencies.
187
185
188
-
```
189
-
./cluster/mesos/docker/km/build.sh
190
-
```
186
+
1. Kubernetes-Mesos image includes the compiled linux binaries.
187
+
188
+
```
189
+
./cluster/mesos/docker/km/build.sh
190
+
```
191
+
192
+
This image needs to be built every time you recompile the server binaries.
191
193
192
194
1. [Optional] Configure Mesos resources
193
195
@@ -297,6 +299,30 @@ ex: `./cluster/kubectl.sh get pods`
297
299
docker run -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/docker:/var/lib/docker --rm martin/docker-cleanup-volumes
298
300
```
299
301
302
+
### Build Locally
303
+
304
+
The steps above tell you how to build in a container, for minimal local dependencies. But if you have Go and Make installed you can build locally much faster:
305
+
306
+
```
307
+
KUBERNETES_CONTRIB=mesos make
308
+
```
309
+
310
+
However, if you're not on linux, you'll still need to compile the linux/amd64 server binaries:
The above two steps should be significantly faster than cross-compiling a whole new release for every supported platform (which is what `./build/release.sh` does).
317
+
318
+
Breakdown:
319
+
320
+
- `KUBERNETES_CONTRIB=mesos` - enables building of the contrib/mesos binaries
321
+
- `hack/build-go.sh` - builds the Go binaries for the current architecture (linux/amd64 when in a docker container)
322
+
- `make` - delegates to `hack/build-go.sh`
323
+
- `build/run.sh` - executes a command in the build container
324
+
- `build/release.sh` - cross compiles Kubernetes for all supported architectures and operating systems (slow)
0 commit comments