{"id":15136226,"url":"https://github.com/eriksjolund/nextcloud-podman","last_synced_at":"2026-03-14T09:04:08.711Z","repository":{"id":206693476,"uuid":"717481426","full_name":"eriksjolund/nextcloud-podman","owner":"eriksjolund","description":"Demo of running nextcloud with rootless podman. Systemd services are generated from quadlets. Containers used: nextcloud, mariadb, redis, nginx","archived":false,"fork":false,"pushed_at":"2024-10-27T14:59:23.000Z","size":19,"stargazers_count":3,"open_issues_count":1,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-26T21:22:55.057Z","etag":null,"topics":["demo","mariadb","nextcloud","nginx","podman","quadlet","redis","socket-activation","systemd"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/eriksjolund.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":"2023-11-11T15:54:06.000Z","updated_at":"2025-01-27T15:28:31.000Z","dependencies_parsed_at":null,"dependency_job_id":"70d6c2b9-463d-4564-9320-380dc7ef6109","html_url":"https://github.com/eriksjolund/nextcloud-podman","commit_stats":null,"previous_names":["eriksjolund/nextcloud-podman"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eriksjolund%2Fnextcloud-podman","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eriksjolund%2Fnextcloud-podman/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eriksjolund%2Fnextcloud-podman/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eriksjolund%2Fnextcloud-podman/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/eriksjolund","download_url":"https://codeload.github.com/eriksjolund/nextcloud-podman/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248664162,"owners_count":21141907,"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":["demo","mariadb","nextcloud","nginx","podman","quadlet","redis","socket-activation","systemd"],"created_at":"2024-09-26T06:04:37.339Z","updated_at":"2026-03-14T09:04:08.683Z","avatar_url":"https://github.com/eriksjolund.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# nextcloud-podman\n\nDemo of running nextcloud with rootless podman by using these containers\n\n| image |\n| --    |\n| docker.io/library/mariadb:latest |\n| docker.io/library/redis:latest |\n| docker.io/library/nginx:alpine |\n| docker.io/library/nextcloud:fpm |\n\nData is stored in bind mounted volumes under the directory _~/nextcloud-data_.\nAll files and directories have the ownership of the regular user on the host.\nNo pods are used. All containers are running in a custom network.\nNginx is configured to use [_socket activation_](https://github.com/eriksjolund/podman-nginx-socket-activation/).\n\n__status:__ experimental\n\n\u003e [!WARNING]\n\u003e This guide configures nginx to use HTTP.\n\u003e HTTP requests and responses are sent in plaintext to the web browser.\n\u003e This is insecure. For real production use cases, you need to configure nginx to use HTTPS.\n\nTested with podman 5.3.0-RC1\n\nA minimal test to see that it's possible to log in worked:\n\n1. `sudo useradd test`\n1. `sudo machinectl shell --uid=test`\n1. `git clone https://github.com/eriksjolund/nextcloud-podman.git`\n1. `cd nextcloud-podman`\n1. Run command\n   ```\n   bash install.sh 8080\n   ```\n   The number chosen specifies the port.\n   The command might take a few minutes before it returns because pulling _docker.io/library/nextcloud:fpm_\n   can take a while.\n1. In a web browser go to http://localhost:8080\n1. Wait until the nextcloud web interface is shown. (Possibly reloading the webpage is required?). This step might take about 5 minutes.\n1. Fill in a username and a password in the _create admin account_ web form.\n1. Log in with the username and password.\n1. Check disk consumption in the bind-mounted directories _~/nextcloud-data_\n   ```\n   $ podman unshare du -sh ~/nextcloud-data/\n   883M\t/var/home/test/nextcloud-data/\n   $\n   ```\n1. Verify that all files and directories under _~/nextcloud-data_ are owned by the regular user on the host\n    ```\n    $ podman unshare find ~/nextcloud-data -not -user 0\n    $ podman unshare find ~/nextcloud-data -not -group 0\n    $\n    ```\n    __result__: yes, all files and directories under _~/nextcloud-data_ are owned by the regular user on the host\n\n### References\n\nhttps://github.com/eriksjolund/podman-nginx-socket-activation\nabout: nginx, podman, socket activation\n\nhttps://github.com/eriksjolund/podman-detect-option\nabout: `--userns keep-id:uid=$uid,gid=$gid`\n\nhttps://github.com/containers/podman/discussions/20519\nThis project was created to see if it is possible to run nextcloud in multiple containers (nextcloud, mariadb, redis, nginx) with rootless podman and at the same\ntime only create files and directories that are owned by the regular user on the host. See the discussion for the starting point of the idea.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feriksjolund%2Fnextcloud-podman","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feriksjolund%2Fnextcloud-podman","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feriksjolund%2Fnextcloud-podman/lists"}