2021-11-30 11:20:42 +01:00
## Developer channel
If you want to switch to the develop channel, you simply stop and delete the mastercontainer and create a new one with a changed tag to develop:
```shell
2022-08-26 12:16:44 +02:00
sudo docker run \
2023-08-10 16:41:47 +02:00
--init \
2022-08-26 12:16:44 +02:00
--sig-proxy=false \
2021-11-30 11:20:42 +01:00
--name nextcloud-aio-mastercontainer \
--restart always \
2022-08-26 12:21:56 +02:00
--publish 80:80 \
--publish 8080:8080 \
--publish 8443:8443 \
2021-11-30 11:20:42 +01:00
--volume nextcloud_aio_mastercontainer:/mnt/docker-aio-config \
--volume /var/run/docker.sock:/var/run/docker.sock:ro \
2025-03-25 09:13:06 +01:00
ghcr.io/nextcloud-releases/all-in-one:develop
2021-11-30 11:20:42 +01:00
```
And you are done :)
It will now also select the developer channel for all other containers automatically.
2022-04-23 15:14:59 +02:00
## How to publish new releases?
Simply use https://github.com/nextcloud/all-in-one/issues/180 as template.
2025-03-20 17:30:49 +01:00
## How to update existing instances to a new major Nextcloud version?
Simply use https://github.com/nextcloud/all-in-one/issues/6198 as template.
2022-01-24 14:58:55 +01:00
## How to build new containers
Go to https://github.com/nextcloud-releases/all-in-one/actions/workflows/repo-sync.yml and run the workflow that will first sync the repo and then build new container that automatically get published to `develop` and `develop-arm64` .
2021-11-30 11:20:42 +01:00
2022-07-27 16:01:10 +02:00
## How to test things correctly?
2023-04-27 15:19:22 +02:00
Before testing, make sure that at least the amd64 containers are built successfully by checking the last workflow here: https://github.com/nextcloud-releases/all-in-one/actions/workflows/build_images.yml.
2022-07-27 16:03:36 +02:00
There is a testing-VM available for the maintainer of AIO that allows for some final testing before releasing new version. See [this ](https://cloud.nextcloud.com/apps/collectives/Nextcloud%20Handbook/Technical/AIO%20testing%20VM?fileId=6350152 ) for details.
2021-11-30 11:20:42 +01:00
2025-03-20 13:19:49 +01:00
Additionally, there are now E2E tests available that can be run via https://github.com/nextcloud/all-in-one/actions/workflows/playwright.yml
2025-03-20 12:23:33 +01:00
2022-07-27 16:01:10 +02:00
## How to promote builds from develop to beta
2022-01-28 16:46:16 +01:00
1. Verify that no job is running here: https://github.com/nextcloud-releases/all-in-one/actions/workflows/build_images.yml
2022-04-13 15:14:30 +02:00
2. Go to https://github.com/nextcloud-releases/all-in-one/actions/workflows/promote-to-beta.yml, click on `Run workflow` .
2022-07-27 16:01:10 +02:00
## Where to find the VPS and other builds?
This is documented here: https://github.com/nextcloud-releases/all-in-one/tree/main/.build
2022-04-13 15:14:30 +02:00
## How to promote builds from beta to latest
2025-05-26 11:11:44 +02:00
1. Verify that GitHub Services are running correctly: https://www.githubstatus.com/
2022-04-13 15:14:30 +02:00
1. Verify that no job is running here: https://github.com/nextcloud-releases/all-in-one/actions/workflows/promote-to-beta.yml
2025-05-26 11:11:44 +02:00
1. Go to https://github.com/nextcloud-releases/all-in-one/actions/workflows/promote-to-latest.yml, click on `Run workflow` .
2023-11-20 15:09:03 +01:00
## How to connect to the database?
Simply run `sudo docker exec -it nextcloud-aio-database psql -U oc_nextcloud nextcloud_database` and you should be in.
2025-06-20 01:17:45 -07:00
## How to locally build and test changes to mastercontainer?
1. Push changes to your own git fork and branch.
1. Use below commands to build mastercontainer image for a custom git url and branch:
```
cd Containers/mastercontainer
docker buildx build -t ghcr.io/nextcloud-releases/all-in-one:latest --build-arg AIO_GIT_URL="https://github.com/my-fork-repo/all-in-one.git" --build-arg AIO_GIT_BRANCH="my-feature-branch" --load .
```
1. Start a container with above built image.
1. Since the hash of a locally built image doesn't match the latest release mastercontainer, it prompts for a mandatory update. To temporarily bypass the update suffix `?bypass_mastercontainer_update` to the URL. Eg: `https://localhost:8080/containers?bypass_mastercontainer_update`