https://github.com/stv0g/xilinx-hw-server-docker
Run a Xilinx hw_server in a Docker container
https://github.com/stv0g/xilinx-hw-server-docker
docker xilinx
Last synced: 12 months ago
JSON representation
Run a Xilinx hw_server in a Docker container
- Host: GitHub
- URL: https://github.com/stv0g/xilinx-hw-server-docker
- Owner: stv0g
- License: apache-2.0
- Created: 2022-02-23T18:35:06.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2023-05-30T12:05:26.000Z (about 3 years ago)
- Last Synced: 2025-03-25T03:25:04.261Z (about 1 year ago)
- Topics: docker, xilinx
- Language: Dockerfile
- Homepage:
- Size: 449 KB
- Stars: 17
- Watchers: 3
- Forks: 6
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Xilinx hw_server & xsdb Docker Image
This Docker image allows you to run Xilinx's `hw_server` as well as the Xilinx debugger `xsdb` in a Docker container.
Using QEmu user-space emulation, these tools can also run on embedded devices like a Raspberry Pi or the Ultra-scale boards themself.
- [Blog article with details](https://noteblok.net/2022/02/23/running-a-xilinx-hw_server-as-docker-container/)

## Tested Vivado versions
- [v2021.2](https://github.com/users/sstaehli/packages/container/hw_server/20585701?tag=2021.2)
- [v2020.1](https://github.com/users/sstaehli/packages/container/hw_server/20585725?tag=2020.1)
## Tested systems
- Raspberry Pi 4 with 64-bit Raspberry Pi OS (Debian Bullseye)
## Usage
### Docker
```bash
docker run \
--rm \
--restart unless-stopped \
--privileged \
--volume /dev/bus/usb:/dev/bus/usb \
--publish 3121:3121 \
--detach \
ghcr.io/stv0g/hw_server:v2021.2
```
### Docker-compose
Copy the `docker-compose.yml` file from this repo to your target's working directory and run the following command to start the container.
```bash
docker-compose up -d
```
## Running on non x86_64 systems
```bash
# Install docker
sudo apt-get update && sudo apt-get upgrade
curl -sSL https://get.docker.com | sh
sudo systemctl enable --now docker
# Optional: Install docker-compose (with Python3)
sudo apt-get install libffi-dev libssl-dev
sudo apt install python3-dev
sudo apt-get install -y python3 python3-pip
sudo pip3 install docker-compose
# Enable qemu-user emulation support for running amd64 Docker images
docker run --rm --privileged aptman/qus -s -- -p x86_64
# Run the hw_server with docker
docker run --rm --restart unless-stopped --privileged --volume /dev/bus/usb:/dev/bus/usb --publish 3121:3121 --detach ghcr.io/sst/hw_server:2021.2
# - OR -
# Run the hw_server with docker-compose (copy the docker-compose.yml to your working dir first)
docker-compose up -d
```
The following steps are not necessary if you use docker-compose.
### Optional: Enable QEmu userspace emulation at system startup
```bash
cat > /etc/systemd/system/qus.service < /etc/systemd/system/hw_server.service <