From 49e5152d6d92dd0912bbeddc47fe73262407c5e3 Mon Sep 17 00:00:00 2001 From: cytopia Date: Sun, 10 Mar 2019 14:46:23 +0100 Subject: [PATCH] #105 First draft definition for docker-sync --- docker-compose-dev.yml | 18 ++++++++++++ docker-sync.yml | 63 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 81 insertions(+) create mode 100644 docker-compose-dev.yml create mode 100644 docker-sync.yml diff --git a/docker-compose-dev.yml b/docker-compose-dev.yml new file mode 100644 index 000000000..6fdfd71b6 --- /dev/null +++ b/docker-compose-dev.yml @@ -0,0 +1,18 @@ +version: '2.1' + +services: + php: + volumes: + - devilbox-intranet-sync:/var/www/default:nocopy + - devilbox-data-www-sync:/shared/httpd:nocopy + httpd: + volumes: + - devilbox-intranet-sync:/var/www/default:nocopy + - devilbox-data-www-sync:/shared/httpd:nocopy + +volumes: + # docker-sync managed volumes + devilbox-intranet-sync: + external: true + devilbox-data-www-sync: + external: true diff --git a/docker-sync.yml b/docker-sync.yml new file mode 100644 index 000000000..be4bdb257 --- /dev/null +++ b/docker-sync.yml @@ -0,0 +1,63 @@ +version: '2' + + +options: + # The path to devilbox docker-compose.yml file + compose-file-path: 'docker-compose.yml' + + # The path to your custom docker-compose-dev.yml file + compose-dev-file-path: 'docker-compose-dev.yml' + + +syncs: + # ------------------------------------------------------------ + # Devilbox Intranet + # ------------------------------------------------------------ + devilbox-intranet-sync: + # which folder to watch / sync from - you can use tilde (~), it will get expanded. + # Be aware that the trailing slash makes a difference + # if you add them, only the inner parts of the folder gets synced, otherwise the parent folder + # will be synced as top-level folder + src: '${DEVILBOX_PATH}/.devilbox/www/' + + # this does not user groupmap but rather configures the server to map + # optional: usually if you map users you want to set the user id of your application + # container here + sync_userid: '${NEW_UID}' + + # OS aware sync strategy, default to: + # * native_osx under MacOS (native) + # * unison under MacOS (docker-machine) + # * native docker volume under linux + #sync_strategy: 'unison' + + # optional, a list of excludes. These patterns will not be synced see: + # http://www.cis.upenn.edu/~bcpierce/unison/download/releases/stable/unison-manual.html#ignore + # for the possible syntax and see sync_excludes_type below + sync_excludes: ['.gitignore', '.git/', '.idea/', '.vscode/'] + + # ------------------------------------------------------------ + # Devilbox Projects + # ------------------------------------------------------------ + devilbox-data-www-sync: + # which folder to watch / sync from - you can use tilde (~), it will get expanded. + # Be aware that the trailing slash makes a difference + # if you add them, only the inner parts of the folder gets synced, otherwise the parent folder + # will be synced as top-level folder + src: '${HOST_PATH_HTTPD_DATADIR}/' + + # this does not user groupmap but rather configures the server to map + # optional: usually if you map users you want to set the user id of your application + # container here + sync_userid: '${NEW_UID}' + + # OS aware sync strategy, default to: + # * native_osx under MacOS (native) + # * unison under MacOS (docker-machine) + # * native docker volume under linux + #sync_strategy: 'unison' + + # optional, a list of excludes. These patterns will not be synced see: + # http://www.cis.upenn.edu/~bcpierce/unison/download/releases/stable/unison-manual.html#ignore + # for the possible syntax and see sync_excludes_type below + sync_excludes: ['.gitignore', '.git/', '.idea/', '.vscode/']