• Stars
    star
    213
  • Rank 185,410 (Top 4 %)
  • Language
    Dockerfile
  • License
    Other
  • Created over 9 years ago
  • Updated about 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Docker image with wine, steam and steam games on the local host with graphical and audio support.

Windows games on Linux! Steam games!

Play Steam and Windows games on Linux using Wine to do so and confining the mess inside a Docker container. Bind X11's socket for the windows to appear and use ear the sound from PulseAudio.

Prerequisites

Docker

Be sure to have Docker installed. Detailed explanations are given on the Docker official site. For Ubuntu 16.04 (amd64) you can install the latest version of Docker Community Edition with the following command.

sudo apt-get install \
  apt-transport-https \
  ca-certificates \
  curl \
  software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository \
  "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) \
  stable"
sudo apt-get update
sudo apt-get install docker-ce

PulseAudio

For the sound to work, you need the PulseAudio server. You can check if it's installed and configured by launching a sample sound and looking for a pulseaudio process.

aplay /usr/share/sounds/alsa/Front_Center.wav && ps -A | grep pulseaudio

A supported GPU

Currently, Nvidia cards should work out of the box whereas AMD and Intel Integrated chipsets may require some additional work (tweaking in builder.sh). Let me know about your experimentations!

Installation

Clone this repository to get the Dockerfile and the helper scripts to build and launch a corresponding container.

git clone https://github.com/webanck/docker-wine-steam.git
cd docker-wine-steam
./builder.sh
./launcher.sh

Then you should be inside the container as the wine user. The last steps are an ultimate Wine configuration and the installation of Steam (which you can skip if you just want to use Wine for Windows games/applications).

finalize_installation

It will open the Wine configuration tool winecfg. My advice: let Windows XP as default. In the Audio tab, choose pulseaudio for each device.

audio tab configuration

In the Graphics tab, I recommend to disable windows decorations and to emulate a virtual desktop of your screen's resolution.

graphics tab configuration

After the installation of Steam, you can simply use the provided alias steam to launch it. Before playing any game, be sure to turn the Steam overlay off (uncheck Steam->Settings->In-Game->Enable the Steam Overlay) because it's not supported by Wine.

Subsequent uses and data flow

After the installation is finished, you can leave the container typing exit or using the keys Ctrl+D. Your data will remain in the container while you don't delete it, and you can restart it easily with the former launcher script.

./launcher.sh

You might want to copy some files into the shared_directory which is mounted in the home of the wine user. Some scripts are provided to help you import or export quickly your steam installation.

Motivation

Have you ever tried to install Wine? And have you ever tried to install Wine while using CUDA on your system? Well, if you have not, do not try, it's messy.