{"id":21970885,"url":"https://github.com/librecodecoop/nextcloud-docker","last_synced_at":"2025-04-28T11:41:48.494Z","repository":{"id":37261497,"uuid":"253617011","full_name":"LibreCodeCoop/nextcloud-docker","owner":"LibreCodeCoop","description":"☁️ NextCloud with SSL and Docker","archived":false,"fork":false,"pushed_at":"2025-04-08T12:44:55.000Z","size":143,"stargazers_count":38,"open_issues_count":0,"forks_count":13,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-08T13:44:27.543Z","etag":null,"topics":["docker","docker-compose","hacktoberfest","nextcloud","php"],"latest_commit_sha":null,"homepage":"","language":"Makefile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/LibreCodeCoop.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-04-06T21:14:33.000Z","updated_at":"2025-03-05T17:55:52.000Z","dependencies_parsed_at":"2024-02-08T23:31:48.164Z","dependency_job_id":"4f69e03c-4ac4-4c57-ae70-b5b90efb5a53","html_url":"https://github.com/LibreCodeCoop/nextcloud-docker","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LibreCodeCoop%2Fnextcloud-docker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LibreCodeCoop%2Fnextcloud-docker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LibreCodeCoop%2Fnextcloud-docker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LibreCodeCoop%2Fnextcloud-docker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/LibreCodeCoop","download_url":"https://codeload.github.com/LibreCodeCoop/nextcloud-docker/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251306819,"owners_count":21568335,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["docker","docker-compose","hacktoberfest","nextcloud","php"],"created_at":"2024-11-29T14:43:57.019Z","updated_at":"2025-04-28T11:41:48.486Z","avatar_url":"https://github.com/LibreCodeCoop.png","language":"Makefile","readme":"Languages avaliable: [pt-BR](docs/README_ptBR.md)\n\n# Nextcloud with SSL and Docker\n\n- [Nextcloud with SSL and Docker](#nextcloud-with-ssl-and-docker)\n  - [Setup of docker](#setup-of-docker)\n  - [Setup of proxy](#setup-of-proxy)\n  - [Setup of database](#setup-of-database)\n  - [Before first run](#before-first-run)\n  - [After setup](#after-setup)\n  - [Custom setup](#custom-setup)\n    - [Customize docker-compose content](#customize-docker-compose-content)\n    - [PHP](#php)\n  - [Run Nextcloud](#run-nextcloud)\n  - [Use a specific version of Nextcloud](#use-a-specific-version-of-nextcloud)\n  - [Logs](#logs)\n\n## Setup of docker\n\nYou need to have, on your server, the installed docker. The installation can be done with an official script, following the following steps:\n- Download the docker\n```bash\ncurl -fsSL https://get.docker.com -o get-docker.sh\n```\n- run the script\n```bash\nsh get-docker.sh\n```\n- Give permissions to execute the Docker command to your user\n```bash\nsudo usermod -aG docker $USER\n```\n- Remove the installation script\n```bash\nrm get-docker.sh\n```\n\n## Setup of proxy\n\nFollow the instructions of this repository:\n\nhttps://github.com/LibreCodeCoop/nginx-proxy\n\n## Setup of database\n\nFollow the instructions of this repository:\n\nhttps://github.com/LibreCodeCoop/postgres-docker\n\n## Before first run\n\nCopy the `.env.example` to `.env` and set the values.\n\n```bash\ncp .env.example .env\n```\n\n| Environment | service | Description |\n|-------------|---------|-------|\n| [`VIRTUAL_HOST`](https://github.com/nginx-proxy/nginx-proxy#usage) | `web` | Your domain |\n| [`LETSENCRYPT_HOST`](https://github.com/nginx-proxy/docker-letsencrypt-nginx-proxy-companion/blob/master/docs/Basic-usage.md#step-3---proxyed-containers) | `web` | Your domain |\n| [`LETSENCRYPT_EMAIL`](https://github.com/nginx-proxy/docker-letsencrypt-nginx-proxy-companion/blob/master/docs/Let's-Encrypt-and-ACME.md#contact-address) | `web` | Your sysadmin email |\n| `NEXTCLOUD_TRUSTED_DOMAINS` | `app` | domains separated by comma. The domain web is mandatory, add your domain together with whe domain web. The domain `web` is the domain of Nginx service. |\n\n\n\u003e **PS**: Let's Encrypt only work in servers when the `VIRTUAL_HOST` and `LETSENCRYPT_HOST` have a valid public domain registered in a DNS server. Don't try to use in localhost, don't work!\n\nCreate a network \n\n```bash\ndocker network create reverse-proxy\ndocker network create postgres\n```\n\n## After setup\n\nAfter finish the setup, access this url: https://yourdomain.tld/settings/admin/overview.\n\nIf is necessary run any occ command, run like this:\n\n```bash\ndocker compose exec -u www-data app ./occ db:add-missing-indices\ndocker compose exec -u www-data app ./occ db:convert-filecache-bigint\n```\n\n## Custom setup\n\n### Customize docker-compose content\n\nYou can do this using environments and creating a file called `docker-compose.override.yml` to add new services.\n\n### PHP\n\n- Create your `.ini` file at `volumes/php/` folder. Example: `volumes/php/xdebug.ini`\n- Alter the file `docker-compose.override.yml` adding your volume\n```yaml\nservices:\n  app:\n    volumes:\n      - ./volumes/php/xdebug.ini:/usr/local/etc/php/conf.d/xdebug.ini\n```\n\n\n### PHP-FPM\n\n- For PHP-FPM modifications, include the following volume to the app service in `docker-compose.override.yml` file:\n```yaml\nservices:\n  app:\n    volumes:\n        - ./volumes/php/pm.ini:/usr/local/etc/php/conf.d/\n```\n- Create a file  `./volumes/php/pm.ini` with the following content (see references for tunning according your setup):\n```yaml\n[www]\npm.max_children = 10\npm.start_servers = 2\npm.min_spare_servers = 1\npm.max_spare_servers = 3\n```\n\n- References:\n- https://docs.nextcloud.com/server/21/admin_manual/installation/server_tuning.html#tune-php-fpm\n- https://spot13.com/pmcalculator/\n\n## Run Nextcloud\n\n```bash\n# The postgres service is executed separated to be possible reuse this service to other applications that use PostgreSQL\ndocker compose up -f docker-compose-postgres.yml -d\ndocker compose up -d\ndocker compose -d\n```\n## Use a specific version of Nextcloud\n\nChange the value of NEXTCLOUD_VERSION at `.env` file and put the tag name that you want to use. Check the availables tags here: https://hub.docker.com/_/nextcloud/tags\n\nBuild the images, down the containers and get up again:\n\n```bash\ndocker compose build --pull\ndocker compose up -d\n```\n\n## Logs\n\nIf you want to see the logs, run:\n\n```bash\ndocker compose logs -f --tail=100\n```\nYou will see this message in the logs and other many upgrade messages:\n\n```log\napp_1      | 2020-04-28T19:49:38.568623133Z Initializing nextcloud 18.0.4.2 ...\napp_1      | 2020-04-28T19:49:38.577733913Z Upgrading nextcloud from 18.0.3.0 ...\n```\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flibrecodecoop%2Fnextcloud-docker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flibrecodecoop%2Fnextcloud-docker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flibrecodecoop%2Fnextcloud-docker/lists"}