From 3c2f4b52e176fee88a848a273fd78f02494d6016 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc=20Br=C3=BCckner?= Date: Wed, 16 Aug 2017 17:21:07 +0200 Subject: [PATCH] Use custom Dockerfiles instead of mounting files for remote docker #104 --- .../with-nginx-proxy/apache/app/Dockerfile | 4 ++++ .../with-nginx-proxy/apache/app/autoconfig.php | 10 ++++++++++ .../apache/{caching.php => app/redis.php} | 0 .../with-nginx-proxy/apache/db.env | 3 +++ .../with-nginx-proxy/apache/docker-compose.yml | 12 ++++++------ .../with-nginx-proxy/apache/proxy/Dockerfile | 3 +++ .../apache/{ => proxy}/uploadsize.conf | 0 .../with-nginx-proxy/fpm/app/Dockerfile | 4 ++++ .../with-nginx-proxy/fpm/app/autoconfig.php | 10 ++++++++++ .../fpm/{caching.php => app/redis.php} | 0 .../docker-compose/with-nginx-proxy/fpm/db.env | 3 +++ .../with-nginx-proxy/fpm/docker-compose.yml | 17 ++++++++--------- .../with-nginx-proxy/fpm/proxy/Dockerfile | 3 +++ .../fpm/{ => proxy}/uploadsize.conf | 0 .../with-nginx-proxy/fpm/web/Dockerfile | 3 +++ .../with-nginx-proxy/fpm/{ => web}/nginx.conf | 0 16 files changed, 57 insertions(+), 15 deletions(-) create mode 100644 .examples/docker-compose/with-nginx-proxy/apache/app/Dockerfile create mode 100644 .examples/docker-compose/with-nginx-proxy/apache/app/autoconfig.php rename .examples/docker-compose/with-nginx-proxy/apache/{caching.php => app/redis.php} (100%) create mode 100644 .examples/docker-compose/with-nginx-proxy/apache/db.env create mode 100644 .examples/docker-compose/with-nginx-proxy/apache/proxy/Dockerfile rename .examples/docker-compose/with-nginx-proxy/apache/{ => proxy}/uploadsize.conf (100%) create mode 100644 .examples/docker-compose/with-nginx-proxy/fpm/app/Dockerfile create mode 100644 .examples/docker-compose/with-nginx-proxy/fpm/app/autoconfig.php rename .examples/docker-compose/with-nginx-proxy/fpm/{caching.php => app/redis.php} (100%) create mode 100644 .examples/docker-compose/with-nginx-proxy/fpm/db.env create mode 100644 .examples/docker-compose/with-nginx-proxy/fpm/proxy/Dockerfile rename .examples/docker-compose/with-nginx-proxy/fpm/{ => proxy}/uploadsize.conf (100%) create mode 100644 .examples/docker-compose/with-nginx-proxy/fpm/web/Dockerfile rename .examples/docker-compose/with-nginx-proxy/fpm/{ => web}/nginx.conf (100%) diff --git a/.examples/docker-compose/with-nginx-proxy/apache/app/Dockerfile b/.examples/docker-compose/with-nginx-proxy/apache/app/Dockerfile new file mode 100644 index 0000000..2d54bc4 --- /dev/null +++ b/.examples/docker-compose/with-nginx-proxy/apache/app/Dockerfile @@ -0,0 +1,4 @@ +FROM nextcloud:apache + +COPY autoconfig.php /usr/src/nextcloud/config/autoconfig.php +COPY redis.php /usr/src/nextcloud/config/redis.php diff --git a/.examples/docker-compose/with-nginx-proxy/apache/app/autoconfig.php b/.examples/docker-compose/with-nginx-proxy/apache/app/autoconfig.php new file mode 100644 index 0000000..ea7004e --- /dev/null +++ b/.examples/docker-compose/with-nginx-proxy/apache/app/autoconfig.php @@ -0,0 +1,10 @@ + '/var/www/html/data', + 'dbtype' => 'mysql', + 'dbname' => getenv('MYSQL_DATABASE'), + 'dbuser' => getenv('MYSQL_USER'), + 'dbpass' => getenv('MYSQL_PASSWORD'), + 'dbhost' => 'db', + 'dbtableprefix' => '', +); diff --git a/.examples/docker-compose/with-nginx-proxy/apache/caching.php b/.examples/docker-compose/with-nginx-proxy/apache/app/redis.php similarity index 100% rename from .examples/docker-compose/with-nginx-proxy/apache/caching.php rename to .examples/docker-compose/with-nginx-proxy/apache/app/redis.php diff --git a/.examples/docker-compose/with-nginx-proxy/apache/db.env b/.examples/docker-compose/with-nginx-proxy/apache/db.env new file mode 100644 index 0000000..a436605 --- /dev/null +++ b/.examples/docker-compose/with-nginx-proxy/apache/db.env @@ -0,0 +1,3 @@ +MYSQL_PASSWORD= +MYSQL_DATABASE=nextcloud +MYSQL_USER=nextcloud diff --git a/.examples/docker-compose/with-nginx-proxy/apache/docker-compose.yml b/.examples/docker-compose/with-nginx-proxy/apache/docker-compose.yml index a186b95..ab55024 100644 --- a/.examples/docker-compose/with-nginx-proxy/apache/docker-compose.yml +++ b/.examples/docker-compose/with-nginx-proxy/apache/docker-compose.yml @@ -13,7 +13,7 @@ networks: services: proxy: - image: jwilder/nginx-proxy + build: proxy ports: - 80:80 - 443:443 @@ -23,7 +23,6 @@ services: - html:/usr/share/nginx/html - certs:/etc/nginx/certs:ro - /var/run/docker.sock:/tmp/docker.sock:ro - - ./uploadsize.conf:/etc/nginx/conf.d/uploadsize.conf:ro networks: - proxy-tier labels: @@ -43,9 +42,11 @@ services: restart: always app: - image: nextcloud:apache + build: app volumes: - nextcloud:/var/www/html + env_file: + - db.env environment: - VIRTUAL_HOST= - LETSENCRYPT_HOST= @@ -61,9 +62,8 @@ services: - db:/var/lib/mysql environment: - MYSQL_ROOT_PASSWORD= - - MYSQL_DATABASE=nextcloud - - MYSQL_USER=nextcloud - - MYSQL_PASSWORD= + env_file: + - db.env restart: always redis: diff --git a/.examples/docker-compose/with-nginx-proxy/apache/proxy/Dockerfile b/.examples/docker-compose/with-nginx-proxy/apache/proxy/Dockerfile new file mode 100644 index 0000000..242c84e --- /dev/null +++ b/.examples/docker-compose/with-nginx-proxy/apache/proxy/Dockerfile @@ -0,0 +1,3 @@ +FROM jwilder/nginx-proxy:alpine + +COPY uploadsize.conf /etc/nginx/conf.d/uploadsize.conf diff --git a/.examples/docker-compose/with-nginx-proxy/apache/uploadsize.conf b/.examples/docker-compose/with-nginx-proxy/apache/proxy/uploadsize.conf similarity index 100% rename from .examples/docker-compose/with-nginx-proxy/apache/uploadsize.conf rename to .examples/docker-compose/with-nginx-proxy/apache/proxy/uploadsize.conf diff --git a/.examples/docker-compose/with-nginx-proxy/fpm/app/Dockerfile b/.examples/docker-compose/with-nginx-proxy/fpm/app/Dockerfile new file mode 100644 index 0000000..dfd3c8c --- /dev/null +++ b/.examples/docker-compose/with-nginx-proxy/fpm/app/Dockerfile @@ -0,0 +1,4 @@ +FROM nextcloud:fpm + +COPY autoconfig.php /usr/src/nextcloud/config/autoconfig.php +COPY redis.php /usr/src/nextcloud/config/redis.php diff --git a/.examples/docker-compose/with-nginx-proxy/fpm/app/autoconfig.php b/.examples/docker-compose/with-nginx-proxy/fpm/app/autoconfig.php new file mode 100644 index 0000000..ea7004e --- /dev/null +++ b/.examples/docker-compose/with-nginx-proxy/fpm/app/autoconfig.php @@ -0,0 +1,10 @@ + '/var/www/html/data', + 'dbtype' => 'mysql', + 'dbname' => getenv('MYSQL_DATABASE'), + 'dbuser' => getenv('MYSQL_USER'), + 'dbpass' => getenv('MYSQL_PASSWORD'), + 'dbhost' => 'db', + 'dbtableprefix' => '', +); diff --git a/.examples/docker-compose/with-nginx-proxy/fpm/caching.php b/.examples/docker-compose/with-nginx-proxy/fpm/app/redis.php similarity index 100% rename from .examples/docker-compose/with-nginx-proxy/fpm/caching.php rename to .examples/docker-compose/with-nginx-proxy/fpm/app/redis.php diff --git a/.examples/docker-compose/with-nginx-proxy/fpm/db.env b/.examples/docker-compose/with-nginx-proxy/fpm/db.env new file mode 100644 index 0000000..a436605 --- /dev/null +++ b/.examples/docker-compose/with-nginx-proxy/fpm/db.env @@ -0,0 +1,3 @@ +MYSQL_PASSWORD= +MYSQL_DATABASE=nextcloud +MYSQL_USER=nextcloud diff --git a/.examples/docker-compose/with-nginx-proxy/fpm/docker-compose.yml b/.examples/docker-compose/with-nginx-proxy/fpm/docker-compose.yml index 756ebcd..bbe5ec3 100644 --- a/.examples/docker-compose/with-nginx-proxy/fpm/docker-compose.yml +++ b/.examples/docker-compose/with-nginx-proxy/fpm/docker-compose.yml @@ -13,7 +13,7 @@ networks: services: proxy: - image: jwilder/nginx-proxy + build: proxy ports: - 80:80 - 443:443 @@ -23,7 +23,6 @@ services: - html:/usr/share/nginx/html - certs:/etc/nginx/certs:ro - /var/run/docker.sock:/tmp/docker.sock:ro - - ./uploadsize.conf:/etc/nginx/conf.d/uploadsize.conf:ro networks: - proxy-tier labels: @@ -43,9 +42,8 @@ services: restart: always web: - image: nginx + build: web volumes: - - ./nginx.conf:/etc/nginx/nginx.conf:ro - nextcloud:/var/www/html environment: - VIRTUAL_HOST= @@ -57,7 +55,9 @@ services: restart: always app: - image: nextcloud:fpm + build: app + env_file: + - db.env volumes: - nextcloud:/var/www/html restart: always @@ -66,17 +66,16 @@ services: image: mariadb volumes: - db:/var/lib/mysql + env_file: + - db.env environment: - MYSQL_ROOT_PASSWORD= - - MYSQL_DATABASE=nextcloud - - MYSQL_USER=nextcloud - - MYSQL_PASSWORD= restart: always redis: image: redis restart: always - + collabora: image: collabora/code cap_add: diff --git a/.examples/docker-compose/with-nginx-proxy/fpm/proxy/Dockerfile b/.examples/docker-compose/with-nginx-proxy/fpm/proxy/Dockerfile new file mode 100644 index 0000000..242c84e --- /dev/null +++ b/.examples/docker-compose/with-nginx-proxy/fpm/proxy/Dockerfile @@ -0,0 +1,3 @@ +FROM jwilder/nginx-proxy:alpine + +COPY uploadsize.conf /etc/nginx/conf.d/uploadsize.conf diff --git a/.examples/docker-compose/with-nginx-proxy/fpm/uploadsize.conf b/.examples/docker-compose/with-nginx-proxy/fpm/proxy/uploadsize.conf similarity index 100% rename from .examples/docker-compose/with-nginx-proxy/fpm/uploadsize.conf rename to .examples/docker-compose/with-nginx-proxy/fpm/proxy/uploadsize.conf diff --git a/.examples/docker-compose/with-nginx-proxy/fpm/web/Dockerfile b/.examples/docker-compose/with-nginx-proxy/fpm/web/Dockerfile new file mode 100644 index 0000000..d6eac3e --- /dev/null +++ b/.examples/docker-compose/with-nginx-proxy/fpm/web/Dockerfile @@ -0,0 +1,3 @@ +FROM nginx + +COPY nginx.conf /etc/nginx/nginx.conf diff --git a/.examples/docker-compose/with-nginx-proxy/fpm/nginx.conf b/.examples/docker-compose/with-nginx-proxy/fpm/web/nginx.conf similarity index 100% rename from .examples/docker-compose/with-nginx-proxy/fpm/nginx.conf rename to .examples/docker-compose/with-nginx-proxy/fpm/web/nginx.conf