Fetching contributors…
Cannot retrieve contributors at this time
136 lines (85 sloc) 3.04 KB

Install the Devilbox


Ensure you have read and followed the :ref:`prerequisites`

Table of Contents

Download the Devilbox

The Devilbox does not need to be installed. The only thing that is required is its git directory. To download that, open a terminal and copy/paste the following command.

host> git clone
.. seealso::

   * :ref:`howto_open_terminal_on_mac`
   * :ref:`howto_open_terminal_on_win`
   * :ref:`checkout-different-devilbox-release`

Create .env file

Inside the cloned Devilbox git directory, you will find a file called env-example. This file is the main configuration with sane defaults for Docker Compose. In order to use it, it must be copied to a file named .env. (Pay attention to the leading dot).

host> cp env-example .env

The .env file does nothing else then providing environment variables for Docker Compose and in this case it is used as the main configuration file for the Devilbox by providing all kinds of settings (such as which version to start up).

.. seealso::
   * |ext_lnk_docker_compose_env_file|
   * :ref:`env_file`

Set uid and gid

To get you started, there are only two variables that need to be adjusted:


The values for those two variables refer to your local (on your host operating system) user id and group id. To find out what the values are required in your case, issue the following commands on a terminal:

Find your user id

host> id -u

Find your group id

host> id -g

In most cases both values will be 1000, but for the sake of this example, let's assume a value of 1001 for the user id and 1002 for the group id.

Open the .env file with your favorite text editor and adjust those values:

.. seealso::
   * |ext_lnk_uid|
   * :ref:`howto_find_uid_and_gid_on_mac`
   * :ref:`howto_find_uid_and_gid_on_win`
   * :ref:`syncronize_container_permissions`

OS specific setup

Linux: SELinux

If you have SELinux enabled, you will also have to adjust the :ref:`env_mount_options` to allow shared mounts among multiple container:

.. seealso::
   * :ref:`env_mount_options`
   * |ext_lnk_docker_selinux_label|
   * |ext_lnk_docker_mount_z_flag|


  1. Devilbox is cloned
  2. .env file is created
  3. User and group id have been set in .env file

That's it, you have finished the first section and have a working Devilbox ready to be started.

.. seealso:: :ref:`troubleshooting`