# Devilbox Documentation [Home](https://github.com/cytopia/devilbox) | Overview | [Configuration](Configuration.md) | [Usage](Usage.md) | [Updating](Updating.md) | [Info](Info.md) | [PHP Projects](PHP_Projects.md) | [Emails](Emails.md) | [Logs](Logs.md) | [Intranet](Intranet.md) | [FAQ](FAQ.md) ---- ## Overview ![Devilbox](img/devilbox-dash.png) This is a brief overview to get you started as quick as possible. For in-depth documentation use the navigation above. ### Install, Configure and Start ```shell # Get the soures $ git clone https://github.com/cytopia/devilbox $ cd devilbox # Create and customize the config file $ cp env-example .env $ vim .env # Start your container $ docker-compose up ``` ### Create projects Inside the `.env` file you will find two important variables: 1. `HOST_PATH_HTTPD_DATADIR` 2. `TLD_SUFFIX` The first one defines the root path for all your projects and the second one defines your desired domain suffix (default: `loc`). Inside the `HOST_PATH_HTTPD_DATADIR` folder you will have to create the following generic directory structure: `/htdocs`. Files from the `htdocs` folder are then served via `http://.`. **TL;DR (easy)** - Assuming `TLD_SUFFIX` equals `loc` - Assuming `HOST_PATH_HTTPD_DATADIR` equals `/shared/httpd/` - Assuming desired project name equals `my-new-project` - `mkdir -p /shared/httpd/my-new-project/htdocs` - `echo "127.0.0.1 my-new-project.loc" | sudo tee --append /etc/hosts` - `curl http://my-new-project.loc` - **TL;DR (pro)** - `export project=my-new-project` - `. .env` - `mkdir -p ${HOST_PATH_HTTPD_DATADIR}/${project}/htdocs` - `echo "127.0.0.1 ${project}.${TLD_SUFFIX}" | sudo tee --append /etc/hosts` - `curl http://${project}.${TLD_SUFFIX}` Here is a more complete example for the directory structure: ``` project1/ htdocs/ project2/ htdocs/ some-random-name/ htdocs -> ./some-dir/ # <-- symlinks are also possible some-dir/ my-website.com/ htdocs -> /shared/httpd/site.com/ # <-- symlinks are also possible ``` You will then have to extend `/etc/hosts` with your created foldernames plus the tld suffix: ``` 127.0.0.1 project1.loc 127.0.0.1 project2.loc 127.0.0.1 some-random-name.loc 127.0.0.1 my-website.com.loc ``` Contents inside the `htdocs` folder will be server via the configured domain automatically. So in order to access project2's htdoc folder go to `http://project2.loc` (assuming `TLD_SUFFIX` was `loc`)