Skip to content

way5/docker-webone

Repository files navigation

WebOne on 🐳 [Docker]

This is the work in progress version of Docker image with WebOne Proxy Server by Alexander Tauenis 👍 on board.

Please refer to the original 🔥 Wiki page before to change configuration files.

Contributing

If your want to build your own image or to share your code, please read about the CONTRIBUTING first.

Quick Setup and Run

Run the container on port 8080 and the default configuration at /etc/webone/webone.conf.

docker run -d -p 8080:8080 --name webone u306060/webone:latest

Environment variables (version 0.17.4 and higher):

These are used as a container-wide accessible values and could be used in WebOne configuration as %YOUR_ENV_VARIABLE%. E.g.: DefaultHostName=%PROXY_HOSTNAME%.

Name Description
SERVICE_PORT (optional) This port number must be the same as the exposed (container external) port, on which WebOne oprates. And it's used for the container healthcheck feature allowing Docker to make sure your instance of WebOne is up and running. Default value: 8080
PROXY_HOSTNAME (optional) Custom WebOne hostname, for more details see #160 (see also DefaultHostName in custom.conf).
CONFIG_PATH (optional) The main (webone.conf) configuration path. By default WebOne is expecting the configuration at /etc/webone/webone.conf or in the same directory where it has been installed. You may change this path to, for instance: /your/directory/webone.conf, of cource if directory /your/directory exists or it is exposed to the host machine with -v option.
LOG_DIR (optional) A directory where WebOne will store log files, by default it is /etc/webone/logs. It could be used in configuration as AppendLogFile=%LOG_DIR%/webone.log (see: custom.conf).
TIMEZONE (optional) It is recommended to set up the correct timezone for your container so timestamps which prints WebOne become meaningful. You can find your timezone name on WiKi, see TZ identtifier column.

Custom configuration

  1. Create a directory on your host machine (e.g. /your/local/webone_configs for *nix or C:\WebOne\webone_configs for Windows) and copy the configuration directory contents into it;

  2. Edit custom.conf as needed. You may expand the list of customized options, using ones from webone.conf;

  3. Run docker

    docker run -d -p 8080:8080 --name webone \
    -v /your/local/webone_configs:/etc/webone \
    -e TIMEZONE=Asia/Tomsk \
    -e CONFIG_PATH=/etc/webone/webone.conf \
    -e SERVICE_PORT=8080 \
    -e LOG_DIR=/etc/webone/logs \
    -e PROXY_HOSTNAME=mydockerhost \
    u306060/webone:latest

    for Windows change the configuration folder respectively:

    ...
    -v C:\WebOne\webone_configs:/home/webone \
    ...

Note

The Port option value and SERVICE_PORT variable value must be equal (see: custom.conf).

Custom configuration files are loaded using the include statement as one at the very end of webone.conf. By default the Docker image is self-sufficient, which means that it already carries the default configuration and could be started right after dowloading without any change. The defaults could be overriden by using Custom configuration approach.

OpenSSL

Since WebOne version 0.17.0 there is Added support for browsing HTTPS with pre-2004 browsers without certificate which seems to work fine in standalone versions, however it shows an issue (OpenSSL error - ca md too weak) on Docker images. The Ubuntu based build was created for the purpose of testing this functionality.

About creating certificates for software of deprecated versions, see: webone/issue 93

About

WebOne HTTP1.X Proxy on Docker

Topics

Resources

Stars

Watchers

Forks

Contributors 3

  •  
  •  
  •