Coder Social home page Coder Social logo

desktainer's Introduction

desktainer

GitHub Workflow Status Docker Pulls

๐Ÿ’ป Remote desktop in a container.

๐Ÿ“ฆ This image is also on Docker Hub as dmotte/desktainer and runs on several architectures (e.g. amd64, arm64, ...). To see the full list of supported platforms, please refer to the .github/workflows/docker.yml file. If you need an architecture which is currently unsupported, feel free to open an issue.

Thanks to fcwu/docker-ubuntu-vnc-desktop and soffchen/tiny-remote-desktop for the inspiration.

โœณ๏ธ For an extended version of this Docker image, see dmotte/desktainer-plus.

Usage

The simplest way to try this image is:

docker run -it --rm -p 6901:6901 dmotte/desktainer

Then head over to http://localhost:6901/ to access the remote desktop.

screen01

For a more complex example, refer to the docker-compose.yml file.

Note: this image is not meant to be run with the --user Docker option, because the startup.sh script needs to run as root in the initial phase. Moreover, the custom user created via the USER environment variable (see below) will be a sudoer, so running the container as root is useful in any case.

๐Ÿ’ก Tip: If you need to, you can extend this project by making your own Dockerfile starting from this image (i.e. FROM dmotte/desktainer) and/or mount custom supervisor configuration files. See the dmotte/desktainer-plus Docker image for an example of how to do it.

Environment variables

List of supported environment variables:

Variable Required Description
RESOLUTION No (default: 1280x720) Screen resolution
USER No (default: debian) Name of the custom user. If set to root, no custom user will be created and the main user will be root
PASSWORD No (default: debian) Password of the custom user (if USER != root)
VNC_PASSWORD No (default: debian) Password for the VNC server
VNC_PORT No (default: 5901) TCP port of the VNC server
NOVNC_PORT No (default: 6901) TCP port of the noVNC webserver

Development

If you want to contribute to this project, the first thing you have to do is to clone this repository on your local machine:

git clone https://github.com/dmotte/desktainer.git

Then you just have to run this command:

docker-compose down && docker-compose up --build

This will automatically build the Docker image using the docker-build directory as build context and then the Docker-Compose stack will be started.

If you prefer to run the stack in daemon (detached) mode:

docker-compose up -d

In this case, you can view the logs using the docker-compose logs command:

docker-compose logs -ft

desktainer's People

Contributors

dmotte avatar vlu7109 avatar

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.