# Prepare Copy all example files and dir Cop and set your username: `.env.example` Choose php version and redis needed redis containers `docker-compose.yml.example` `dockerfiles/workspace/crontab-example` `dockerfiles/workspace/aliases.sh.example` Set your site(s) root-mappings `config/nginx/conf.d/vhosts.conf.example` ## First Create alias for `docker-compose` command. `echo 'alias dc="docker-compose"' >> ~/.bash_aliases` Also, you have might be needed include `~/.bash_aliases` in your `~/.bashrc` file. Build all `dc build` ## Second Create usefully symlinks `./create-symlinks.sh` ## Get composer auth token If you do not have composer github auth.json file in `~/.composer` dir. You will need launch the helper-script: `./get-composer-auth.sh` ## Before use and launch You need copy `vhosts.conf.example` and edit this file - remove unused roots (or change to existing dirs). Setup correctly nginx config. You ready for up containers. `dc up -d` ## Database dumps Database dumps must be placement on `./hostfiles` directory. ## Bash scripts After execute created symlinks, you have some enter-points for vulnerable popular tasks. ### Xdebug For start debugging in php-fpm, also in workspace `./xdebug-start.sh [74|81]` - `74` by default For start debugging in php-fpm, also in workspace `./xdebug-stop.sh` or `./stop-xdebug.sh 81` if you launch start new php version 81 #### Xdebug with profiler Profiler saved your profiles into `/tmp` directory in own container. In docker-compose.base.yml exists volume that represent `/tmp` directory to `./data/profiler`. In this case `./data/profiler` must be have `777` chmod`s. For starting xdebug with profiler enable you might: `./xdebug-start.sh 74 1` Or `./xdebug-start.sh 74 profiler` if you like Second argument must be have any string For disable profiler - just simple launch `./xdebug-quit.sh` ### Mysql For import dumps from `hostfiles` directory you might be enter to mysql console: `./mysql.sh` Change you needed database and source to the `*.sql` dump. `use mydatabase` `source /hostfiles/mydatabase.sql` Dump must be extracted before source in mysql-cli ### Workspace For execute composer update|install or nodejs operations, also yarn, npm and all node-builds. You might use `workspace`-container For the enter to workspace container with php 7.4 you need launch usefully helper script in your home directory: `./enter-to-workspace.sh` For enter to `workspace` with php7.3 you need pass `73` container name suffix `./enter-to-workspace.sh 73` ### Nginx For restart `nginx` after some changes in nginx configuration, you might: `./restart-nginx.sh` ### Elastic Copy example Launch: `dc -f docker-compose.elastic.yml up -d elastic` ## Src build need DOCKER_BUILDKIT If you want build own workspace image. You need export environment variable `export DOCKER_BUILDKIT=1` more info https://github.com/edrevo/dockerfile-plus