Giter VIP home page Giter VIP logo

wine-x11-novnc-docker's Introduction

wine-x11-novnc-docker

Docker Image Size (tag) Docker Pulls

Not a very good name, is it?

Ever wanted to containerize your wine applications and access them via a web browser? No? Neither did I!

This container runs:

  • Xvfb - X11 in a virtual framebuffer
  • x11vnc - A VNC server that scrapes the above X11 server
  • noNVC - A HTML5 canvas vnc viewer
  • Fluxbox - a small window manager
  • Explorer.exe - to demo that it works

This is a trusted build on the Docker Hub.

Run It

docker run --rm -p 8080:8080 solarkennedy/wine-x11-novnc-docker
xdg-open http://localhost:8080

In your web browser you should see the default application, explorer.exe:

Explorer Screenshot

Modifying

This is a base image. You should fork or use this base image to run your own wine programs?

Issues

  • Wine could be optimized a bit
  • Fluxbox could be skinned or reduced

wine-x11-novnc-docker's People

Contributors

altano avatar archedraft avatar kal74 avatar nsapa avatar robincpc avatar solarkennedy avatar zaoqi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

wine-x11-novnc-docker's Issues

Adding sound output capability

Thanks for this interesting implementation of wine.
I need a multimedia windows application run on Linux. This docker image works well, but can not play sounds.
I've checked with HTML and VNC client. None of these can play audio.
Can anyone provide a solution?

No network access

First of all, thank you for this great image, exactly what and how I wanted to build it myself!

I have one major problem though, .exe executed with wine seem unable to make any kind of network connections, such as:

  • I can not ping any host (not even localhost)
  • Database manager can not connect to any DB instance
  • Web browsers (built in iexplore.exe and also tried Google Chrome) can't access any host either.

I did 2 hours of research, ping seems to be a separate issue, but no network access does not seem to be normal.

Any suggestions? Thanks!

INFO gave up: progman entered FATAL state, too many start retries too quickly

When I am running this getting the following error

INFO gave up: progman entered FATAL state, too many start retries too quickly

complete log


Unable to find image 'solarkennedy/wine-x11-novnc-docker:latest' locally
latest: Pulling from solarkennedy/wine-x11-novnc-docker
a3ed95caeb02: Pull complete
3b1d42cd9af9: Pull complete
707a1369b69a: Pull complete
2dcca790c489: Pull complete
ae857e8dd13c: Pull complete
b657ce3967b9: Pull complete
647e461ab707: Pull complete
9fc298632aa5: Pull complete
eb76051df749: Pull complete
44534c422f05: Pull complete
Digest: sha256:604fca489d715dba9473555e55e44c6a2329f5d402b3acabb77bada9109c40d5
Status: Downloaded newer image for solarkennedy/wine-x11-novnc-docker:latest
/usr/lib/python2.7/dist-packages/supervisor/options.py:295: UserWarning: Supervisord is running as roo
ing for its configuration file in default locations (including its current working directory); you pro
ify a "-c" argument specifying an absolute path to a configuration file for improved security.
  'Supervisord is running as root and it is searching '
2018-03-09 10:05:32,223 CRIT Supervisor running as root (no user in config file)
2018-03-09 10:05:32,223 WARN Included extra file "/etc/supervisor/conf.d/supervisord.conf" during pars
2018-03-09 10:05:32,244 INFO RPC interface 'supervisor' initialized
2018-03-09 10:05:32,244 CRIT Server 'unix_http_server' running without any HTTP authentication checkin
2018-03-09 10:05:32,245 INFO supervisord started with pid 1
2018-03-09 10:05:33,248 INFO spawned: 'x11vnc' with pid 7
2018-03-09 10:05:33,253 INFO spawned: 'X11' with pid 8
2018-03-09 10:05:33,255 INFO spawnerr: can't find command '/usr/bin/wine'
2018-03-09 10:05:33,258 INFO spawned: 'novnc' with pid 9
2018-03-09 10:05:34,290 INFO success: x11vnc entered RUNNING state, process has stayed up for > than 1
s)
2018-03-09 10:05:34,290 INFO success: X11 entered RUNNING state, process has stayed up for > than 1 se
2018-03-09 10:05:34,290 INFO spawnerr: can't find command '/usr/bin/wine'
2018-03-09 10:05:34,290 INFO success: novnc entered RUNNING state, process has stayed up for > than 1
)
2018-03-09 10:05:36,324 INFO spawnerr: can't find command '/usr/bin/wine'
2018-03-09 10:05:39,329 INFO spawnerr: can't find command '/usr/bin/wine'
2018-03-09 10:05:39,330 INFO gave up: progman entered FATAL state, too many start retries too quickly

TimeZone

Changing the TimeZone in the container is not reflected in the wine application,

Could We Get A Newer Version Of NoVNC Becuase It Doesn't Scale

This really isn't a issue I love your docker image I just wish we could get a newer NoVNC package since it doesn't scale at all to your browser window it just stays at a small 4:3 aspect ratio. Also Newer version of NoVNC have more options ,but overall your package is great!

Update to Focal (20.04)?

It seams that Eoan reach end-of-life. Here is the message I got when I use 'apt-get update'
ๅœ–็‰‡

I have modified your Dockerfile to use Focal (20.04) as based image in my fork. Here is the links:
https://github.com/RobinCPC/wine-x11-novnc-docker
https://hub.docker.com/repository/docker/robincpc/wine-x11-novnc-docker

If you think it is OK, I would like to make a pull request.

P.S. Your docker image is awesome. I use your image to run our company's robot simulation (Windows-based).

Switch from xvfb to allow for GPU Acceleration

Hi,

I love the work you've done on this, I'm using it in another container based on this which allows Blue Iris (a popular Windows-only Surveillance Camera software) to run on Linux servers.

The issue is, this application is extremely CPU heavy if the computer it's running on doesn't support Intel Quick Sync Hardware Acceleration. (See jshridha/docker-blueiris#4)

Unfortunately, xvfb does not support hardware acceleration (see this table), meaning this setup won't allow for GPU acceleration.

Would other alternatives to xvfb permit GPU acceleration to be used on Wine applications?

Replace Xvfb with Xdummy?

Hi,

The Xpra wiki article on Xdummy indicate it support more X11 extensions and the resize of the virtual display.
So the noVNC frontend could resize the X11 virtual display and maybe fix #8.

Are you interested in work in this area?

Best regards,
NS

64-bit support

Hello, I am trying to run this on an M1 Mac running Big Sur. Modern macOS does not support 32-bit applications, so deploying this causes segfaults in the container logs when trying to open Wine applications. I believe Wine has 64-bit versions of executable however, so I was wondering how feasible it was to have this container launch with a 64-bit version of explorer?

Hitting issues using container

Hey @solarkennedy thanks for this cool image.

I think I'm hitting the same issue as in /issues/2. I can use your image directly and it works:

PS C:\src\tradewars2002> docker run --rm -p 8080:8080 solarkennedy/wine-x11-novnc-docker
/usr/lib/python2.7/dist-packages/supervisor/options.py:298: UserWarning: Supervisord is running as root and it is searching for its configuration file in default locations (including its current working directory); you probably want to specify a "-c" argument specifying an absolute path to a configuration file for improved security.
  'Supervisord is running as root and it is searching '
2019-04-28 05:03:09,500 CRIT Supervisor running as root (no user in config file)
2019-04-28 05:03:09,500 INFO Included extra file "/etc/supervisor/conf.d/supervisord.conf" during parsing
2019-04-28 05:03:09,505 INFO RPC interface 'supervisor' initialized
2019-04-28 05:03:09,505 CRIT Server 'unix_http_server' running without any HTTP authentication checking
2019-04-28 05:03:09,505 INFO supervisord started with pid 1
2019-04-28 05:03:10,507 INFO spawned: 'X11' with pid 8
2019-04-28 05:03:10,508 INFO spawned: 'novnc' with pid 9
2019-04-28 05:03:10,508 INFO spawned: 'x11vnc' with pid 10
2019-04-28 05:03:10,509 INFO spawned: 'explorer' with pid 11
2019-04-28 05:03:10,510 INFO spawned: 'fluxbox' with pid 12
Warning: could not find self.pem
Starting webserver and WebSockets proxy on port 8080
2019-04-28 05:03:11,385 INFO reaped unknown pid 55
2019-04-28 05:03:11,514 INFO success: X11 entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2019-04-28 05:03:11,514 INFO success: novnc entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2019-04-28 05:03:11,514 INFO success: x11vnc entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2019-04-28 05:03:11,514 INFO success: explorer entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2019-04-28 05:03:11,514 INFO success: fluxbox entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)


Navigate to this URL:

    http://c4921a89f7c1:8080/vnc.html?host=c4921a89f7c1&port=8080

Press Ctrl-C to exit


PORT=5900
2019-04-28 05:03:15,128 INFO reaped unknown pid 61
2019-04-28 05:03:15,428 INFO reaped unknown pid 63
2019-04-28 05:03:16,091 INFO reaped unknown pid 65
2019-04-28 05:03:17,272 INFO reaped unknown pid 43
2019-04-28 05:03:17,290 INFO reaped unknown pid 38

But if I build your image from the Dockerfile and run it I get errors:

PS C:\src\tradewars2002> docker run --rm -p 8080:8080 altano/tradewars2002
/usr/lib/python2.7/dist-packages/supervisor/options.py:298: UserWarning: Supervisord is running as root and it is searching for its configuration file in default locations (including its current working directory); you probably want to specify a "-c" argument specifying an absolute path to a configuration file for improved security.
  'Supervisord is running as root and it is searching '
2019-04-28 04:59:47,750 CRIT Supervisor running as root (no user in config file)
2019-04-28 04:59:47,750 INFO Included extra file "/etc/supervisor/conf.d/supervisord.conf" during parsing
2019-04-28 04:59:47,755 INFO RPC interface 'supervisor' initialized
2019-04-28 04:59:47,755 CRIT Server 'unix_http_server' running without any HTTP authentication checking
2019-04-28 04:59:47,755 INFO supervisord started with pid 1
2019-04-28 04:59:48,757 INFO spawned: 'X11' with pid 8
2019-04-28 04:59:48,758 INFO spawned: 'novnc' with pid 9
2019-04-28 04:59:48,760 INFO spawned: 'x11vnc' with pid 10
2019-04-28 04:59:48,761 INFO spawned: 'explorer' with pid 11
2019-04-28 04:59:48,762 INFO spawned: 'fluxbox' with pid 12
2019-04-28 04:59:48,762 INFO exited: novnc (exit status 127; not expected)
2019-04-28 04:59:49,636 INFO reaped unknown pid 44
2019-04-28 04:59:49,766 INFO success: X11 entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2019-04-28 04:59:49,767 INFO spawned: 'novnc' with pid 46
2019-04-28 04:59:49,767 INFO success: x11vnc entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2019-04-28 04:59:49,767 INFO success: explorer entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2019-04-28 04:59:49,767 INFO success: fluxbox entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2019-04-28 04:59:49,770 INFO exited: novnc (exit status 127; not expected)
PORT=5900
2019-04-28 04:59:51,797 INFO spawned: 'novnc' with pid 47
2019-04-28 04:59:51,799 INFO exited: novnc (exit status 127; not expected)
2019-04-28 04:59:53,327 INFO reaped unknown pid 49
2019-04-28 04:59:53,629 INFO reaped unknown pid 51
2019-04-28 04:59:54,302 INFO reaped unknown pid 53
2019-04-28 04:59:55,305 INFO spawned: 'novnc' with pid 57
2019-04-28 04:59:55,308 INFO exited: novnc (exit status 127; not expected)
2019-04-28 04:59:55,308 INFO gave up: novnc entered FATAL state, too many start retries too quickly
2019-04-28 04:59:55,501 INFO reaped unknown pid 32
2019-04-28 04:59:55,518 INFO reaped unknown pid 27

Not sure what the issue is. Any ideas?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.