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.

92 lines
2.4 KiB

8 years ago
# Steam in Docker
Tested in Ubuntu 16.04 LTS (64bit) and openSUSE Leap 42.1
with the following GPU's:
8 years ago
- Intel HD Graphics 3000
- Intel HD Graphics 4400
- NVIDIA's GeForce GTX 560 Ti
## Requirements
- [Docker](https://www.docker.com/)
- (Optional) [Docker Compose](https://docs.docker.com/compose/)
# Building and launching Steam
8 years ago
## 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
8 years ago
You may need to allow your user making local connections to X server,
which can be achieved with this command:
```
xhost +SI:localuser:$(id -un)
```
8 years ago
You can use the following shortcut function and place it to your `~/.bash_aliases` file
8 years ago
```
function docker_helper() { { pushd ~/docker/$1; docker-compose rm -fa "$1"; docker-compose run -d --name "$1" "$@"; popd; } }
function steam() { { docker_helper $FUNCNAME $@; } }
8 years ago
```
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](https://docs.docker.com/compose/compose-file/)
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):
If you are getting `segmentation fault` error or Steam does not start, then you could try resetting its config:
```
8 years ago
$ docker-compose run --rm steam --reset
8 years ago
```
## Grsecurity notes
### grsec: TPE
Trusted Path Execution (TPE)
8 years ago
This Steam docker image is working with the grsecurity patched kernel.
It only needs a `/proc/sys/kernel/grsecurity/tpe_gid` accessible by root for read.
### grsec: PaX
8 years ago
It is also working with PaX part of the grsecurity.
I have tested it with Half-Life games like CS 1.6, and CS:GO.
Please refer to the `launch` file if grsecurity is blocking some executable or a library.
8 years ago
# Links
Below is just bunch of links, someone might find them useful
- https://wiki.ubuntu.com/Valve
- https://developer.valvesoftware.com/wiki/Steam_under_Linux#Ubuntu
- http://media.steampowered.com/client/installer/steam.deb
- http://repo.steampowered.com/steam/archive/precise/steam_latest.deb
- http://repo.steamstatic.com/steam/
8 years ago
- https://grsecurity.net/