will also support "standard" folder sharing (eg. nfs mount points or docker
volumes).
-> **SEE ALSO**: [xds-exec and xds-make](https://github.com/iotbzh/xds-make),
-wrappers on `exec` and `make` commands that allows you to send command to
-`xds-server` and consequently build your application from command-line or from
-your favorite IDE (eg. Netbeans or Visual Studio Code) through `xds-server`.
+> **SEE ALSO**: [xds-exec](https://github.com/iotbzh/xds-exec),
+wrappers on `exec` commands that allows you to send commands to `xds-server`
+and for example build your application from command-line or from your favorite
+IDE (such as Netbeans or Visual Studio Code) through `xds-server`.
## How to run
Use provided script to create a new docker image and start a new container:
```bash
-> wget https://raw.githubusercontent.com/iotbzh/xds-server/master/scripts/xds-docker-create-container.sh
-> bash ./xds-docker-create-container.sh 0 docker.automotivelinux.org/agl/worker-xds:3.99.1
+# Get script
+wget https://raw.githubusercontent.com/iotbzh/xds-server/master/scripts/xds-docker-create-container.sh
+# [snip...]
+
+# Create new XDS worker container
+bash ./xds-docker-create-container.sh 0 docker.automotivelinux.org/agl/worker-xds:3.99.1
+# [snip...]
+
+# Check that new container is running
+docker ps
-> docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b985d81af40c docker.automotivelinux.org/agl/worker-xds:3.99.1 "/usr/bin/wait_for..." 6 days ago Up 4 hours 0.0.0.0:8000->8000/tcp, 0.0.0.0:69->69/udp, 0.0.0.0:10809->10809/tcp, 0.0.0.0:2222->22/tcp agl-worker-seb-laptop-0-seb
```
`xds-server` is automatically started as a service on container startup.
If needed you can stop / start it manually using following commands:
```bash
-> ssh -p 2222 devel@localhost
+# Log into docker container
+ssh -p 2222 devel@localhost
+# Stop XDS server
[15:59:58] devel@agl-worker-seb-laptop-0-seb:~$ /usr/local/bin/xds-server-stop.sh
+# Start XDS server
[15:59:58] devel@agl-worker-seb-laptop-0-seb:~$ /usr/local/bin/xds-server-start.sh
```
`xds-server` uses cross-toolchain install into directory pointed by `sdkRootDir` setting (see configuration section below for more details).
For now, you need to install manually SDK cross toolchain. There are not embedded into docker image by default because the size of these tarballs is too big.
-Use provided `install-agl-sdks` script, for example to install SDK for ARM64:
+Use provided `install-agl-sdks` script, for example to install SDK for ARM64 and Intel corei7-64:
```bash
+# Install ARM64 SDK (automatic download)
/usr/local/bin/xds-utils/install-agl-sdks.sh --aarch aarch64
+
+# Install Intel corei7-64 SDK (using an SDK tarball that has been built or downloaded manually)
+/usr/local/bin/xds-utils/install-agl-sdks.sh --aarch corei7-64 --file /tmp/poky-agl-glibc-x86_64-agl-demo-platform-crosssdk-corei7-64-toolchain-
+3.99.1+snapshot.sh
+
```
### XDS Dashboard
`xds-server` has been integrated as a flavour of AGL SDK docker image. So to rebuild
docker image just execute following commands:
```bash
+# Clone docker-worker-generator git repo
git clone https://git.automotivelinux.org/AGL/docker-worker-generator
+# Start build that will create a docker image
cd docker-worker-generator
make build FLAVOUR=xds
```
You should get `docker.automotivelinux.org/agl/worker-xds:X.Y` image
```bash
+# List image that we just built
docker images
+
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.automotivelinux.org/agl/worker-xds 3.2 786d65b2792c 6 days ago 602MB
```