Skip to content
This repository was archived by the owner on Dec 17, 2024. It is now read-only.

Files

Latest commit

8a3ee87 · Sep 11, 2021

History

History
185 lines (152 loc) · 5.04 KB

selenoid-commands.adoc

File metadata and controls

185 lines (152 loc) · 5.04 KB

Quick Start Guide

To start Selenoid:

  1. Download the latest release binary from GitHub releases for your platform (linux/darwin/windows).

  2. Having the binary launch one command:

    On Linux and Mac OS
    $ ./cm selenoid start --vnc
    Warning

    Running this command with sudo can lead to broken installation. Recommended way is running Selenoid as regular user. On Linux to have permissions to access Docker you may need to add your user to docker group:

    $ sudo usermod -aG docker $USER
    On Windows
    > ./cm.exe selenoid start --vnc
Warning

If you are working behind proxy you should set environment variables HTTP_PROXY, HTTPS_PROXY or NO_PROXY described in Docker documentation:

$ HTTP_PROXY=http://proxy.example.com:80/ ./cm selenoid start

Configuring Selenoid

This section describes supported ways of automatic Selenoid configuration.

Tip

To quickly configure and run Selenoid with defaults type:

./cm selenoid start

Selenoid can be configured in two ways:

  • Using Docker containers (default)

  • Using standalone binaries (when --use-drivers is added)

To view the list of available commands:

./cm selenoid --help

To launch command:

./cm selenoid <command> [args...]

Supported commands are:

Table 1. Commands to configure and run Selenoid
Command Meaning

args

Print Selenoid command line arguments

cleanup

Removes Selenoid traces

configure

Creates Selenoid configuration file (implies download)

download

Downloads Selenoid binary or container image

start

Starts Selenoid process or container (implies download and configure)

status

Shows actual configuration status (whether Selenoid is downloaded, configured or running)

stop

Stops Selenoid process or container

update

Updates Selenoid and configuration to latest version

To see supported flags for each command append --help:

./cm selenoid start --help

Example Commands

  • download command downloads latest or specified Selenoid release as standalone binary or container image:

    ./cm selenoid download --version 1.2.1 --force

    This command does nothing when already downloaded. Use --force flag to download again.

  • configure command in addition to downloading Selenoid also downloads container images or webdriver binaries and generates configuration file:

    ./cm selenoid configure --browsers firefox:>45.0;opera:53.0;android --last-versions 2 --tmpfs 128

    Use --browsers to limit browsers to be configured, --tmpfs - to add Tmpfs support, --last-versions - to limit how many last browser versions to download. If you wish to download all available versions - specify --last-versions 0.

  • start command configures Selenoid and starts it:

    ./cm selenoid start

    By default Selenoid data is stored in ~/.aerokube/selenoid but you can specify another directory using --config-dir flag. To download images with VNC server (to see live browser screen) use --vnc flag:

    ./cm selenoid start --vnc

    To override Selenoid listen port add --port flag:

    ./cm selenoid start --port 4445

    To override Selenoid startup arguments sessions add --args flag:

    ./cm selenoid start --args "-limit 10"

    To download images from private registry - log in with docker login command and add --registry flag:

    docker login my-registry.example.com # Specify user name and password
    ./cm selenoid start --registry https://my-registry.example.com

Downloading Only Some Browser Versions

By default CM downloads browser images corresponding to 2 last versions of Firefox, Chrome and Opera. To download concrete browser versions - use --browsers flag as follows:

Download concrete versions of Firefox and Chrome
./cm selenoid start --browsers 'firefox:51.0;firefox:55.0;chrome:66.0'
Download a range of Firefox versions and 3 last Opera versions
./cm selenoid start --browsers 'firefox:>51.0,<=55.0;opera' --last-versions 3
Download Android image (not downloaded by default because of image size)
./cm selenoid start --browsers 'android:6.0'

Using Existing Configuration File

In some cases you may want to configure Selenoid to use an existing browsers.json configuration file. This is mainly needed to always use the same browser versions instead of downloading latest versions. To achieve this:

  1. Prepare a desired browsers.json configuration file

  2. Launch cm with --browsers-json flag:

    ./cm selenoid start --browsers-json /path/to/browsers.json