From 3b80354e1bf721fbf82f1663e2c181a3c305bfbc Mon Sep 17 00:00:00 2001 From: dechert Date: Sun, 19 Jan 2025 16:51:47 +0100 Subject: [PATCH] docker compose for nextcloud and mariadb --- nextcloud/docker-compose.yml | 33 +++++ .../reference-configs/nextcloud-mariadb.json | 81 ++++++++++++ nextcloud/reference-configs/nextcloud.json | 121 ++++++++++++++++++ 3 files changed, 235 insertions(+) create mode 100644 nextcloud/docker-compose.yml create mode 100644 nextcloud/reference-configs/nextcloud-mariadb.json create mode 100644 nextcloud/reference-configs/nextcloud.json diff --git a/nextcloud/docker-compose.yml b/nextcloud/docker-compose.yml new file mode 100644 index 0000000..c76d881 --- /dev/null +++ b/nextcloud/docker-compose.yml @@ -0,0 +1,33 @@ +# inspired by https://docs.techdox.nz/nextcloud/ + +services: + mariadb: + image: mariadb:10.5.16 + # image: mariadb:10.11.9 + restart: always + command: --transaction-isolation=READ-COMMITTED --log-bin=binlog --binlog-format=ROW + volumes: + - /volume2/docker_1/nextcloud-mariadb:/var/lib/mysql + environment: + - MYSQL_ROOT_PASSWORD=pass1234 + - MYSQL_PASSWORD=pass1234 + - MYSQL_DATABASE=nextcloud + - MYSQL_USER=nextadm + + app: + image: nextcloud:29.0.8 + # image: nextcloud:30.0.4 + restart: always + ports: + - 3002:80 + depends_on: + - db + volumes: + - /volume2/docker_1/docker/nextcloud:/var/www/html + environment: + - MYSQL_PASSWORD=pass1234 + - MYSQL_DATABASE=nextcloud + - MYSQL_USER=nextadm + - MYSQL_HOST=db + - PHP_MEMORY_LIMIT=1024M + - PHP_UPLOAD_LIMIT=1024M \ No newline at end of file diff --git a/nextcloud/reference-configs/nextcloud-mariadb.json b/nextcloud/reference-configs/nextcloud-mariadb.json new file mode 100644 index 0000000..bb0e632 --- /dev/null +++ b/nextcloud/reference-configs/nextcloud-mariadb.json @@ -0,0 +1,81 @@ +{ + "CapAdd" : null, + "CapDrop" : null, + "cmd" : "mariadbd", + "cpu_priority" : 0, + "enable_publish_all_ports" : false, + "enable_restart_policy" : true, + "enable_service_portal" : null, + "enabled" : false, + "env_variables" : [ + { + "key" : "PATH", + "value" : "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" + }, + { + "key" : "GOSU_VERSION", + "value" : "1.17" + }, + { + "key" : "LANG", + "value" : "C.UTF-8" + }, + { + "key" : "MARIADB_VERSION", + "value" : "1:10.11.9+maria~ubu2204" + } + ], + "exporting" : false, + "id" : "ae5e59555864a0d2e295b87995c627b9c2f4b71751486ae2af0787e613ad8193", + "image" : "mariadb:10.11.9", + "is_ddsm" : false, + "is_package" : false, + "labels" : { + "org.opencontainers.image.authors" : "MariaDB Community", + "org.opencontainers.image.base.name" : "docker.io/library/ubuntu:jammy", + "org.opencontainers.image.description" : "MariaDB Database for relational SQL", + "org.opencontainers.image.documentation" : "https://hub.docker.com/_/mariadb/", + "org.opencontainers.image.licenses" : "GPL-2.0", + "org.opencontainers.image.ref.name" : "ubuntu", + "org.opencontainers.image.source" : "https://github.com/MariaDB/mariadb-docker", + "org.opencontainers.image.title" : "MariaDB Database", + "org.opencontainers.image.url" : "https://github.com/MariaDB/mariadb-docker", + "org.opencontainers.image.vendor" : "MariaDB Community", + "org.opencontainers.image.version" : "10.11.9" + }, + "links" : [], + "memory_limit" : 0, + "name" : "nextcloud-mariadb", + "network" : [ + { + "driver" : "bridge", + "name" : "bridge" + } + ], + "network_mode" : "bridge", + "port_bindings" : [ + { + "container_port" : 3306, + "host_port" : 3306, + "type" : "tcp" + } + ], + "privileged" : false, + "service_portals" : [], + "shortcut" : { + "enable_shortcut" : false, + "enable_status_page" : false, + "enable_web_page" : false, + "web_page_url" : "" + }, + "use_host_network" : false, + "version" : 2, + "volume_bindings" : [ + { + "host_volume_file" : "/docker/nextcloud-mariadb", + "is_directory" : true, + "mount_point" : "/var/lib/mysql", + "type" : "rw" + } + ] +} diff --git a/nextcloud/reference-configs/nextcloud.json b/nextcloud/reference-configs/nextcloud.json new file mode 100644 index 0000000..ce1e4d1 --- /dev/null +++ b/nextcloud/reference-configs/nextcloud.json @@ -0,0 +1,121 @@ +{ + "CapAdd" : null, + "CapDrop" : null, + "cmd" : "apache2-foreground", + "cpu_priority" : 0, + "enable_publish_all_ports" : false, + "enable_restart_policy" : true, + "enable_service_portal" : null, + "enabled" : false, + "env_variables" : [ + { + "key" : "PATH", + "value" : "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" + }, + { + "key" : "PHPIZE_DEPS", + "value" : "autoconf \t\tdpkg-dev \t\tfile \t\tg++ \t\tgcc \t\tlibc-dev \t\tmake \t\tpkg-config \t\tre2c" + }, + { + "key" : "PHP_INI_DIR", + "value" : "/usr/local/etc/php" + }, + { + "key" : "APACHE_CONFDIR", + "value" : "/etc/apache2" + }, + { + "key" : "APACHE_ENVVARS", + "value" : "/etc/apache2/envvars" + }, + { + "key" : "PHP_CFLAGS", + "value" : "-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" + }, + { + "key" : "PHP_CPPFLAGS", + "value" : "-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" + }, + { + "key" : "PHP_LDFLAGS", + "value" : "-Wl,-O1 -pie" + }, + { + "key" : "GPG_KEYS", + "value" : "39B641343D8C104B2B146DC3F9C39DC0B9698544 E60913E4DF209907D8E30D96659A97C9CF2A795A 1198C0117593497A5EC5C199286AF1F9897469DC" + }, + { + "key" : "PHP_VERSION", + "value" : "8.2.27" + }, + { + "key" : "PHP_URL", + "value" : "https://www.php.net/distributions/php-8.2.27.tar.xz" + }, + { + "key" : "PHP_ASC_URL", + "value" : "https://www.php.net/distributions/php-8.2.27.tar.xz.asc" + }, + { + "key" : "PHP_SHA256", + "value" : "3eec91294d8c09b3df80b39ec36d574ed9b05de4c8afcb25fa215d48f9ecbc6b" + }, + { + "key" : "PHP_MEMORY_LIMIT", + "value" : "1024M" + }, + { + "key" : "PHP_UPLOAD_LIMIT", + "value" : "1024M" + }, + { + "key" : "APACHE_BODY_LIMIT", + "value" : "1073741824" + }, + { + "key" : "NEXTCLOUD_VERSION", + "value" : "30.0.4" + } + ], + "exporting" : false, + "id" : "4cbe870e472e2419de0cd7b9cf49e1c6857ea5b7c98afa653a7953633759ab79", + "image" : "nextcloud:30.0.4", + "is_ddsm" : false, + "is_package" : false, + "labels" : {}, + "links" : [], + "memory_limit" : 0, + "name" : "nextcloud", + "network" : [ + { + "driver" : "bridge", + "name" : "bridge" + } + ], + "network_mode" : "bridge", + "port_bindings" : [ + { + "container_port" : 80, + "host_port" : 3002, + "type" : "tcp" + } + ], + "privileged" : false, + "service_portals" : [], + "shortcut" : { + "enable_shortcut" : false, + "enable_status_page" : false, + "enable_web_page" : false, + "web_page_url" : "" + }, + "use_host_network" : false, + "version" : 2, + "volume_bindings" : [ + { + "host_volume_file" : "/docker/nextcloud", + "is_directory" : true, + "mount_point" : "/var/www/html", + "type" : "rw" + } + ] +}