Delivers a range of games straight to a computer's desktop.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Andy ba8ca02a5b
update README
8 years ago
Dockerfile support NVIDIA and the Generic OpenGL drivers detection 8 years ago
LICENSE Initial commit 8 years ago
README.md update README 8 years ago
docker-compose.yml lock to nvidia-340 only currently 8 years ago
launch support NVIDIA and the Generic OpenGL drivers detection 8 years ago

README.md

Steam in Docker

Tested in Ubuntu 16.04 LTS (64bit) with the following GPU's:

  • Intel HD Graphics 3000
  • Intel HD Graphics 4400
  • NVIDIA's GeForce GTX 560 Ti

Requirements

Limitations

  • I have added the /launch script that will try to detect the working version of the NVIDIA drivers. Currently this image supports these versions of the NVIDIA driver: 304, 340, 361. It will fallback to the Generic OpenGL driver in case of failure.

Building and launching Steam

Create 32bit image

Create 32-bit Ubuntu 16.04 LTS (xenial) image

sudo apt-get -y install debootstrap
sudo debootstrap --arch=i386 xenial /tmp/xenial-chroot http://archive.ubuntu.com/ubuntu
sudo tar -C /tmp/xenial-chroot -c . | docker import - xenial32
sudo rm -rf /tmp/xenial-chroot
docker tag xenial32 andrey01/xenial32:latest

Build Steam Docker image

You may want to re-run this command later on in order to keep the image updated.

docker build -t andrey01/steam .

Launch the Steam in Docker

You can drop the following aliases to your ~/.bash_aliases

alias docker="sudo docker"
alias docker-compose="sudo docker-compose"
alias steam="docker-compose -f $HOME/docker/steam/docker-compose.yml run --rm steam"

Then just issue "steam" command to run Steam in docker.

Troubleshooting

You might want to modify the docker-compose.yml in case of problems, the file should be pretty self explanatory, although you may refer to the official Docker Compose file reference

Also keep in mind to uncomment or/and add your devices to the devices: section there.

The best result is when you have a similar to the following output, using the glxgears (part of mesa-utils package):

$ docker-compose run --rm steam glxdebug
Running synchronized to the vertical refresh.  The framerate should be
approximately the same as the monitor refresh rate.
305 frames in 5.0 seconds = 60.878 FPS
301 frames in 5.0 seconds = 60.011 FPS
301 frames in 5.0 seconds = 60.009 FPS
305 frames in 5.0 seconds = 60.807 FPS

If you are getting segmentation fault error or Steam does not start, then you could try resetting its config:

$ docker-compose run --rm steam --reset

Links

Below is just bunch of links, someone might find them useful