mirror of
https://github.com/nextcloud/docker.git
synced 2025-03-03 13:55:44 +01:00
Update README.md
Signed-off-by: Josh <josh.t.richards@gmail.com>
This commit is contained in:
parent
3ff69e2c1d
commit
3e14887a1e
1 changed files with 60 additions and 6 deletions
66
README.md
66
README.md
|
@ -1,4 +1,4 @@
|
|||
# What is Nextcloud?
|
||||
# Nextcloud Docker
|
||||
|
||||
[](https://github.com/nextcloud/docker/actions?query=workflow%3AImages)
|
||||
[](https://github.com/nextcloud/docker/actions?query=workflow%3Aupdate.sh)
|
||||
|
@ -12,21 +12,72 @@
|
|||
[](https://doi-janky.infosiftr.net/job/multiarch/job/ppc64le/job/nextcloud)
|
||||
[](https://doi-janky.infosiftr.net/job/multiarch/job/s390x/job/nextcloud)
|
||||
|
||||
A safe home for all your data. Access & share your files, calendars, contacts, mail & more from any device, on your terms.
|
||||
Nextcloud Server is a safe home for all your data. Access & share your files, calendars, contacts, mail & more from any device, on your terms.
|
||||
|
||||

|
||||
|
||||
⚠️⚠️⚠️ This image is maintained by community volunteers and designed for expert use. For quick and easy deployment that supports the full set of Nextcloud Hub features, use the [Nextcloud All-in-One docker container](https://github.com/nextcloud/all-in-one#nextcloud-all-in-one) maintained by Nextcloud GmbH.
|
||||
This repository maintains the community Docker images for Nextcloud Server that are designed to be used in micro-services environments. These images adhere to upstream (Nextcloud Server) recommendations as closely as possible with a minimum of extraneous functionality.
|
||||
|
||||
# How to use this image
|
||||
This image is designed to be used in a micro-service environment. There are two versions of the image you can choose from.
|
||||
While adhering to Nextcloud Server recommendations, these images *intentionally* do not incorporate every bit of functionality supported by Nextcloud. They aim is provide a good baseline for new deployments as well serve as a stable starting point when an image's defaults don't suit a given use case. Select parameters can be changed through environment variables and all of the images can be customized or extended via typical Docker methods - e.g.`Dockerfile`.
|
||||
|
||||
The `apache` tag contains a full Nextcloud installation including an apache web server. It is designed to be easy to use and gets you running pretty fast. This is also the default for the `latest` tag and version tags that are not further specified.
|
||||
These images are classified as Docker Official Images, which means they are curated by Docker, Inc.
|
||||
https://github.com/docker-library/official-images?tab=readme-ov-file#what-are-official-images
|
||||
|
||||
> [!IMPORTANT]
|
||||
> These images are community maintained (primarily by volunteers) and are designed for expert use.
|
||||
|
||||
# What is this?
|
||||
|
||||
|
||||
These images may be used for either:
|
||||
* deploying throw away Nextcloud Server service containers
|
||||
- e.g. mount your data volume and start the container to have a running Nextcloud Server instance ready to be used for testing purposes *or* place behind an HTTPS reverse proxy - and combine with any desired supplementary services - for production usage
|
||||
* building your own specialized images of Nextcloud Server
|
||||
|
||||
|
||||
> [!TIP]
|
||||
> If a more turnkey deployment is desired, use the [Nextcloud All-in-One docker container](https://github.com/nextcloud/all-in-one#nextcloud-all-in-one) which is maintained by Nextcloud GmbH and aims to support the full set of Nextcloud Hub features.
|
||||
|
||||
## Image Variants
|
||||
|
||||
There are multiple editions of the images to accomodate different use cases and preferences.
|
||||
|
||||
Each image is a combination of the following:
|
||||
|
||||
- Apache HTTP Server with `mod_php` (or standalone `php-fpm`)
|
||||
- A specific [version of Nextcloud Server](https://github.com/nextcloud/server/wiki/Maintenance-and-Release-Schedule)
|
||||
- Debian (or Alpine)
|
||||
|
||||
Editions are chosen through the use of Docker image tags.
|
||||
|
||||
### Choosing
|
||||
|
||||
First, decide whether you want to deploy your Nextcloud stack around Apache/mod_php or php-fpm.
|
||||
Second, decide which major version of Nextcloud Server you wish to deploy (the Nextcloud project generally supports and provides security fixes and critical bug fixes for 2 or 3 major versions simultaneously in their *Stable* channel. The lower numbered Stable majors are the most field tested; while the higher numbered majors have the latest features )
|
||||
|
||||
## `nextcloud:apache`
|
||||
|
||||
The is the default image. If you're unsure which edition is appropriate for your situation, you probably want this one.
|
||||
|
||||
The Apache edition contains a full Nextcloud installation including an Apache HTTP server. It is designed to be easy to use and gets you running pretty fast. All Apache editions utilize the `apache` tag This is also the default for the `latest` tag and version tags that are not further specified.
|
||||
|
||||
## `nextcloud:fpm`
|
||||
|
||||
The second option is a `fpm` container. It is based on the [php-fpm](https://hub.docker.com/_/php/) image and runs a fastCGI-Process that serves your Nextcloud page. To use this image it must be combined with any webserver that can proxy the http requests to the FastCGI-port of the container.
|
||||
|
||||
[](http://play-with-docker.com?stack=https://raw.githubusercontent.com/nextcloud/docker/8db861d67f257a3e9ac1790ea06d4e2a7a193a6c/stack.yml)
|
||||
|
||||
|
||||
> [!CAUTION]
|
||||
> When no tag is specified in Docker, `latest` is presumed. While this may seem like a safe choice, keep in mind that `latest` is mutable, does not provide protection against upgrading across major version boundaries, and may introduce breaking changes without any warning.
|
||||
|
||||
> [!TIP]
|
||||
> Best practice is to specify a tag that defines a suitable mixture of the preferred major version of Nextcloud Server + Apache/mod_php versus php-fpm + Debian or Alpine.
|
||||
> It is also sometimes advtangeous to pin the version number of Nextcloud Server more tightly, such as to a specific version (e.g. v28.0.2)
|
||||
|
||||
|
||||
# How to use this image
|
||||
|
||||
## Using the apache image
|
||||
The apache image contains a webserver and exposes port 80. To start the container type:
|
||||
|
||||
|
@ -275,6 +326,9 @@ The easiest way to get a fully featured and functional setup is using a `docker-
|
|||
|
||||
At first, make sure you have chosen the right base image (fpm or apache) and added features you wanted (see below). In every case, you would want to add a database container and docker volumes to get easy access to your persistent data. When you want to have your server reachable from the internet, adding HTTPS-encryption is mandatory! See below for more information.
|
||||
|
||||
> [!NOTE]
|
||||
> All examples here and in the examples folder are provided on a best effort basis. The operator is expected to be familiar with Docker, web server technology, etc. For further details on examples that include third-party components, seek out standard assistance channels for those third-party components.
|
||||
|
||||
## Base version - apache
|
||||
This version will use the apache image and add a mariaDB container. The volumes are set to keep your data persistent. This setup provides **no ssl encryption** and is intended to run behind a proxy.
|
||||
|
||||
|
|
Loading…
Reference in a new issue