all-in-one/php
Simon L. cda721d0dd
Some checks failed
Codespell / Check spelling (push) Waiting to run
Validate community containers / Validate community containers (push) Has been cancelled
Helm Chart Releaser / release (push) Has been cancelled
Json Validator / Json Validator (push) Has been cancelled
Lint php / php-lint (push) Has been cancelled
PHP Deprecation Detector / PHP Deprecation Detector (push) Has been cancelled
Static analysis / static-psalm-analysis (push) Has been cancelled
Twig Lint / twig-lint (push) Has been cancelled
Lint php / php-lint-summary (push) Has been cancelled
Merge pull request #6870 from nextcloud/enh/6748/add-new-background
aio-interface: add new background for hub 25 Autumn
2025-09-18 11:46:24 +02:00
..
data Initial import 2021-11-30 11:20:42 +01:00
public aio-interface: add new background for hub 25 Autumn 2025-09-16 13:32:20 +02:00
session Remove unnecessary file 2021-11-30 13:59:41 +01:00
src update AIO interface to allow to install the latest hub version 2025-09-16 12:10:15 +02:00
templates Merge pull request #6870 from nextcloud/enh/6748/add-new-background 2025-09-18 11:46:24 +02:00
tests restore-instance: fix domain check? 2025-07-28 18:47:06 +02:00
composer.json mastercontainer: update to php8.4 2025-04-29 11:31:56 +02:00
composer.lock php dependency updates 2025-09-04 12:16:12 +00:00
containers-schema.json feat: add community container nextcloud-exporter 2025-09-12 10:53:48 +02:00
containers.json Use a fixed port for internal WOPI requests and callbacks 2025-09-05 06:18:18 -07:00
domain-validator.php domain-validator: use str_contains instead of strpos 2024-06-24 14:32:14 +02:00
psalm-baseline.xml Update psalm baseline 2025-08-12 04:14:35 +00:00
psalm.xml aio-interface: allow to manage the community containers via the AIO interface (#6443) 2025-05-30 09:32:51 +02:00
README.md docs: nextcloud/all-in-one moved to ghcr.io 2025-03-25 12:17:07 +01:00

PHP Docker Controller

This is the code for the PHP Docker controller.

How to run

Running this locally requires :

1. Install the development environment

This project uses Composer as dependency management software. It is very similar to NPM. The command to install all dependencies is:

composer install

2. Access to docker socket

The root user has all privileges including access to the Docker socket. But it is not recommended to launch the local instance with full privileges, consider the docker group for docker access without being root. See https://docs.docker.com/engine/install/linux-postinstall/#manage-docker-as-a-non-root-user

3. Run a nextcloud-aio-mastercontainer container

This application manages containers, including its own container. So you need to run a nextcloud-aio-mastercontainer container for the application to work properly.

Here is a command to quickly launch a container :

docker run \
--rm \
--name nextcloud-aio-mastercontainer \
--volume nextcloud_aio_mastercontainer:/mnt/docker-aio-config \
--volume /var/run/docker.sock:/var/run/docker.sock \
ghcr.io/nextcloud-releases/all-in-one:latest

4. Start your server

With this command you will launch the server:

# Make sure to launch this command with a user having access to the docker socket.
SKIP_DOMAIN_VALIDATION=true composer run dev

You can then access the web interface at http://localhost:8080.

Note: You can restart the server by preceding the command with other environment variables.

Composer routine

Command Description
composer run dev Starts the development server
composer run psalm Run Psalm static analysis
composer run psalm:strict Run Psalm static analysis strict
composer run psalm:update-baseline Run Psalm with --update-baseline arg
composer run lint Run PHP Syntax check
composer run lint:twig Run Twig Syntax check
composer run php-deprecation-detector Run PHP Deprecation Detector