Giter Site home page Giter Site logo

docker-shellinabox's Introduction

docker-shellinabox

Docker container serving shellinabox a Web based AJAX terminal emulator. It could be primarly used to have access to a docker host and its container to manage them.

Be aware that using such an container on a prodution host could have a security risk impact on your docker host and containers.

How To

You can take control of the predefined configuration with the follwing environment variables which could be provided to the container.

If you want to define your own services, fork this repo and add them to the shellinabox_services. The scripts of the container do the rest of the work and also parse the new variable names.

###Services

#####SHELLINABOX_SERVICE_HOST enables and defines the url path where docker host service is available.

#####SHELLINABOX_SERVICE_LOCAL enables and defines the url path where local container service is available.

#####SHELLINABOX_SERVICE_WHO enables and defines the url path where "who" service is available.

###Misc. confiugrations

#####SHELLINABOX_USER if this is set, an user is automatically created.

#####SHELLINABOX_PASSWORD you should set this to your password for the user. if you define a user but omit the password, the default linux behaviour of a login deny occur.

#####SHELLINABOX_ALLOW_SUDO set this variable to anything non empty to automatically add the user defined by SHELLINABOX_USER to the sudo group which can switch to root. Use this with caution, most won't need this, because they access any way to some other container or host. But it can be useful for example to install utilities in the container.

#####SHELLINABOX_INSTALL_PKGS set this variable to a comma delimited list of debian package names to be installed at first start of the container. Useful to install some basic tools like vi etc. in container to provide it to the users in the local service.

#####SHELLINABOX_DEFAULT set the default service to be used. This service will be available at the root of the web server. Set this to the same value as one of the service environment variables above.

#####SHELLINABOX_DISABLE_SSL disables ssl on the shellinabox service. Useful if you anyway put this container behind a proxy.

Examples

Dummy shell in a box to test if it works, but without a real service defined.

docker run -d --name shellinabox -p 4200:4200 -e SHELLINABOX_DISABLE_SSL=1 spali/shellinabox

#####Full example This example contains all possible options you can define. It starts a container without ssl, and all predefined services (accesing docker host, accessing container itself and a who is connected implementation).

docker run -d --name shellinabox -p 4200:4200 -e SHELLINABOX_SERVICE_HOST=host -e SHELLINABOX_SERVICE_WHO=who -e SHELLINABOX_SERVICE_LOCAL=local -e SHELLINABOX_ALLOW_SUDO=1 -e SHELLINABOX_USER=myuser -e SHELLINABOX_PASSWORD=mypassword -e SHELLINABOX_DISABLE_SSL=1 -e SHELLINABOX_DEFAULT=host spali/shellinabox

docker-shellinabox's People

Contributors

spali avatar sspreitzer avatar

Watchers

James Cloos avatar  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.