Skip to content
LogScale Self-Hosted Deployment
This is an archived version of the documentation downloaded from LogScale Documentation Archives. Up to date documentation, and documentation for later versions, is available on LogScale Documentation

## Container Deployment Using `humio` (Testing Only)

### Important

The `humio` is not recommended or supported for use in production deployment and should be used for development and testing only. For a production deployment, see Using `humio-core` or Install Humio Operator on Kubernetes. For more information on the reference architecture for a Kubernetes deployment, see LogScale Kubernetes Reference Architecture.

To deploy the LogScale single node demo using Docker:

1. Install Docker on the machine where you want to run LogScale. You can Download Docker from their site, or by using a package installation program like yum or apt-get.

2. Create a LogScale configuration file on the host machine. This should define basic settings such as the hostname and port numbers that LogScale will use. A sample configuration file called `logscale.env` is shown here:

   ini

       AUTHENTICATION_METHOD=none
       ELASTIC_PORT=9200
       PUBLIC_URL=http://localhost:8080
       KAFKA_SERVERS=127.0.0.1:9092
       HUMIO_PORT=8080

   This sets the public URL to be on port 8080, use the embedded Kafka service and listen on the default IP address.

   For other configuration values, see Basic Configuration and Configuration Variables.

   ### Important

   Docker only loads the environment file when the container is initially created. If you make changes to the settings in your environment file, restarting the container won't work. You'll need to execute docker rm with the container name, and then execute docker run for the changes to take effect.

3. Create a directory to store data for LogScale.

4. Pull the latest LogScale docker image by running the following at the command-line:

   shell

       $ sudo docker pull humio/humio-single-node-demo

### Starting Docker with LogScale

Run the LogScale docker image as a container.

shell

    $ sudo docker run -v $HOST_DATA_DIR:/data  \
       --net=host \
       --name=humio \
       --ulimit="nofile=250000:250000"  \
       --stop-timeout 300 \
       --env-file=$PATH_TO_CONFIG_FILE humio/humio-single-node-demo

To customize the configuration:

- Replace `$HOST_DATA_DIR` with the path to the directory you created in the earlier step. For example, if you created `/home/username/data`, specify that directory here. When the container runs it will create files under this mount point, including directories such as `humio-data`, `logs`, `kafka-data` (as the demo container contains Kafka), and `zookeeper-data`.

- Replace `$PATH_TO_CONFIG_FILE` with the path of the configuration file you created earlier, `logscale.env`.

Using a web browser, navigate to `http://localhost:8080` to open the LogScale web interface.

### Additional Considerations

Note the following points:

- If you're running the LogScale containers on SELinux in `enforcing` mode, the container has to be started with the `--privileged` flag set.

- In the example above, the LogScale container was started with full access to the network of the host machine (`--net=host`). Another possibility is to forward explicit ports: `-p 8080:8080`. By default LogScale only uses port 8080. See also the `HUMIO_HTTP_BIND` and `HUMIO_SOCKET_BIND` variables.

- On a macOS machine, there can be problems with using the `--net=host` option, as this gives full access to the host network. If you get issues, use `-p 8080:8080` to forward port 8080 on the host network to the Docker container. Port 8080 (HTTP) is used by the LogScale web UI.

- You may also need to enable enough memory for the virtual machine running Docker on Mac. Open the Docker app, go to preferences, and specify at least 4GB.

### Running LogScale as a System Service

The Docker container can be started as a service using the Docker run reference.

To ensure LogScale restarts, add `--detach` and `--restart=always` to the above Docker run:

shell

    $ sudo docker run ... --detach --restart=always

#### Enter search term