Skip to content

Commit 4d4da61

Browse files
committed
Add new structure for overview, install and deployment
1 parent 32466f9 commit 4d4da61

File tree

10 files changed

+167
-240
lines changed

10 files changed

+167
-240
lines changed

docs/deployment/backup.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
---
2+
html_meta:
3+
"description": "Backup and restore of Plone 6"
4+
"property=og:description": "Backup and restore of Plone 6"
5+
"property=og:title": "Backup and restore of Plone 6"
6+
"keywords": "Plone, Backup, Restore"
7+
---
8+
9+
10+
11+
# Backup and Restore

docs/deployment/index.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
---
2+
html_meta:
3+
"description": "Deployment of Plone"
4+
"property=og:description": "Deployment of Plone"
5+
"property=og:title": "Deployment of Plone"
6+
"keywords": "Plone, deployment, automation"
7+
---
8+
9+
10+
# Deployment of Plone
11+
12+
13+
14+
```{toctree}
15+
:maxdepth: 2
16+
:hidden: true
17+
18+
provision
19+
scaling
20+
upgrade
21+
backup
22+
```

docs/deployment/provision.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
---
2+
html_meta:
3+
"description": "Provisioning of Plone 6"
4+
"property=og:description": "Provisioning of Plone 6"
5+
"property=og:title": "Provisioning of Plone 6"
6+
"keywords": "Plone, Provision"
7+
---
8+
9+
10+
11+
# Provisioning
12+
13+
## Ansible
14+
15+
## Containers

docs/deployment/scaling.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
---
2+
html_meta:
3+
"description": "Scaling Plone 6"
4+
"property=og:description": "Scaling Plone 6"
5+
"property=og:title": "Scaling Plone 6"
6+
"keywords": "Plone, scaling, high availability"
7+
---
8+
9+
10+
11+
# Scaling
12+
13+
## Traffic
14+
15+
## High availability
16+
17+
## Caching

docs/deployment/upgrade.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
---
2+
html_meta:
3+
"description": "Plone 6 upgrade Guide"
4+
"property=og:description": "Plone 6 upgrade guide"
5+
"property=og:title": "Plone 6 upgrade guide"
6+
"keywords": "Plone, upgrade"
7+
---
8+
9+
10+
11+
# Plone 6 upgrade guide
12+
13+
14+
## from 5.x
15+
16+
## from 6.x

docs/index.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,9 @@ This website is the HTML documentation of Plone, an open source, enterprise-leve
1616
:maxdepth: 2
1717
:hidden: true
1818
19+
overview/index
1920
install/index
21+
deployment/index
2022
volto/index
2123
plone.restapi/docs/source/index
2224
backend/index

docs/install/index.md

Lines changed: 11 additions & 240 deletions
Original file line numberDiff line numberDiff line change
@@ -10,251 +10,22 @@ html_meta:
1010

1111
# Install Plone 6
1212

13-
This section focuses on installing Plone 6 for the developer, tester, or contributor.
13+
## Getting started
1414

15-
For trying out Plone 6, visit our official demonstration site located at:
15+
* What do you want to do?
16+
* Try a demo now
17+
* Run Plone in containers (why use containers here..)
18+
* Develop Plone add-ons or contribute to Plone packages → Install Plone from source
1619

17-
```{toctree}
18-
:maxdepth: 2
19-
:hidden: true
20-
21-
containers/index
22-
```
23-
24-
https://6.demo.plone.org/
25-
26-
```{todo}
27-
For deployment of Plone 6, visit TBD.
28-
```
29-
30-
31-
(install-index-system-requirements-pre-requisites-label)=
32-
33-
## System requirements and pre-requisites
34-
35-
To install Plone 6, you must satisfy system requirements and pre-requisites.
36-
37-
```{todo}
38-
Add any missing requirements, including disk space.
39-
```
40-
41-
- 2GB if using a container image, 4GB RAM if installing manually.
42-
- Disk space (TBD).
43-
- Either a UNIX-like operating system—such as Linux, Ubuntu, macOS—or Windows.
44-
For Windows, it is a good idea to use [Windows Subsystem for Linux (WSL)](https://docs.microsoft.com/en-us/windows/wsl/).
45-
We strongly recommend using a recent version of your operating system released within the last 3 years.
46-
Older systems might not be supported.
47-
- Python 3.7, 3.8, or 3.9.
48-
- Node.js 14 or 16.
49-
- For Plone images, a container engine to develop, manage, and run OCI containers.
50-
51-
52-
(install-index-choose-installation-method-label)=
53-
54-
## Choose an installation method
55-
56-
Developers may either [use the official Plone 6 images](install-index-image-installation-method-label) or [manually install Plone 6](install-index-manual-installation-method-label).
57-
58-
The Plone 6 images are compliant with the [Open Container Initiative (OCI)](https://opencontainers.org/).
59-
They should work with any OCI-compliant container engine for developing, managing, and running Plone 6 images.
60-
Two popular options include [podman](https://podman.io/) and [Docker](https://www.docker.com/products/docker-desktop/).
61-
The Plone 6 images have all the system requirements, pre-requisites, and Plone 6 itself already installed, except those requirements needed for running the container engine itself.
62-
This option is the quickest method to install and develop for Plone 6 and its packages.
63-
64-
There may be some cases where using a Plone 6 image is not practical or desired.
65-
You might want to use an SQL database that is not PostgreSQL, or you might use a deployment workflow that has specific requirements.
66-
For these situations, Plone 6 may be installed manually.
67-
This method takes longer.
68-
It might be a challenge if you bump up against system requirements, or need to resolve conflicts between required packages.
69-
70-
71-
(install-index-image-installation-method-label)=
72-
73-
## Image installation method
74-
75-
The following Plone images are available.
76-
77-
- [`plone/plone-backend`](https://github.com/plone/plone-backend)
78-
- [`plone/plone-frontend`](https://github.com/plone/plone-frontend) (Volto)
79-
- [`plone/plone-haproxy`](https://github.com/plone/plone-haproxy)
80-
81-
See their README files for installation and configuration instructions.
82-
83-
84-
(install-index-manual-installation-method-label)=
85-
86-
## Manual installation method
87-
88-
As an overview, you will perform the following steps in order.
89-
90-
1. Install the Plone backend (which includes the Classic UI) with either [buildout](install-index-install-backend-label) or [pip](install-index-install-backend-pip-label).
91-
1. Create the Plone Site in a web browser, choosing either the new Volto or the Classic UI for a frontend.
92-
1. Install the Plone frontend (Volto) with node.
93-
94-
95-
(install-index-install-backend-label)=
96-
97-
### Install the Plone backend
98-
99-
You can install the Plone backend with either [buildout](install-index-install-backend-label) or [pip](install-index-install-backend-pip-label).
100-
101-
102-
(install-index-install-backend-buildout-label)=
103-
104-
#### Install backend with buildout
105-
106-
Create a new directory to hold your project, make it your current directory, and create a new file inside it called `buildout.cfg`.
107-
This file will refer to the latest version of Plone, and the `user` value that will be used in the next step to create a Plone site.
108-
Paste the following configuration information into it.
109-
110-
```ini
111-
[buildout]
112-
extends = https://dist.plone.org/release/6.0.0a4/versions.cfg
113-
parts = instance
114-
115-
[instance]
116-
recipe = plone.recipe.zope2instance
117-
eggs =
118-
Plone
119-
user = admin:admin
120-
```
121-
122-
Install Plone with the following shell commands.
123-
124-
```shell
125-
# Create a Python virtual environment in the current directory
126-
python3.9 -m venv .
127-
# Install the latest Plone 6 requirements with pip
128-
bin/pip install -r https://dist.plone.org/release/6.0.0a4/requirements.txt
129-
# Run buildout to install Plone 6
130-
bin/buildout
131-
# Start the Plone instance
132-
bin/instance fg
133-
```
134-
135-
136-
(install-index-install-backend-pip-label)=
13720

138-
#### Install backend with pip
21+
## Caveat that Plone is a large project and source installs are non-trivial
13922

140-
Create a new directory to hold your project, make it your current directory, then issue the following commands in a shell session.
14123

142-
```shell
143-
# Create a Python virtual environment in the current directory
144-
python3.9 -m venv .
145-
# Update Python package management tools
146-
bin/pip install -U pip setuptools wheel
147-
# Install Plone 6 with constrained requirements with pip
148-
bin/pip install Plone -c https://dist.plone.org/release/6.0.0a4/constraints.txt
149-
# Create a Plone 6 site with the given username and password in the current directory
150-
bin/mkwsgiinstance -u admin:admin -d .
151-
# Initialize Zope
152-
bin/runwsgi -v etc/zope.ini
153-
```
154-
155-
```{warning}
156-
You might need to edit `etc/zope.conf` to add a `blobstorage` node with a `blob-dir` entry.
157-
See [issue 3345](https://github.com/plone/Products.CMFPlone/issues/3345#issuecomment-953700024).
158-
```
159-
160-
161-
(install-index-create-plone-site-label)=
162-
163-
## Create a Plone site
164-
165-
After you have installed the backend with buildout or pip, open a browser and visit http://localhost:8080/.
166-
167-
Choose either Volto or Classic UI for the frontend.
168-
169-
- For a new Volto frontend, click {guilabel}`Create a new Plone site` to prepare a Plone site and its backend.
170-
171-
```{note}
172-
If this button is not available, then you did not install `plone.volto` with buildout or pip.
173-
```
174-
175-
```{attention}
176-
For Volto, make sure the `Path` identifier is `Plone`.
177-
You can change this, but then you need to change some Volto frontend configuration as well.
178-
```
179-
180-
- For a Plone Classic UI frontend, click {guilabel}`Create Classic Plone site`.
181-
182-
Submit the form and your backend is ready.
183-
184-
If you created a Plone site with a Classic UI frontend, then you have completed installation.
185-
186-
If a created a Plone site with a Volto frontend, continue with the next steps.
187-
188-
189-
(install-index-volto-frontend-node-label)=
190-
191-
## Volto frontend with node
192-
193-
We recommend that you read the chapter {ref}`frontend-getting-started-installing-volto-label` for details.
194-
195-
196-
(install-index-nvm-node-version-manager-label)=
197-
198-
### `nvm`, the Node Version Manager
199-
200-
We recommend that you install [`nvm`, or Node Version Manager](https://github.com/nvm-sh/nvm).
201-
This makes it possible to switch to any version of [`node` (Node.JS)](https://nodejs.org/en/) and [`npm` (Node Package Manager)](https://www.npmjs.com/) for any project on which you might work.
202-
203-
- On Linux: `apt-get install nvm`
204-
- On Mac: `brew install nvm`
205-
- Or use the installation procedure detailed in the [nvm documentation](https://github.com/nvm-sh/nvm)
206-
207-
With `nvm` installed, you can use it to install and use a supported version of `node` and `npm` using the following shell commands.
20824

209-
```shell
210-
nvm install 16
211-
nvm use 16
212-
```
213-
214-
215-
(install-index-install-yarn-label)=
216-
217-
## Install Yarn
218-
219-
Volto requires [Yarn Classic](https://classic.yarnpkg.com/lang/en/), a dependency manager for JavaScript code.
220-
Install Yarn with the following command.
221-
222-
```shell
223-
npm install --global yarn
224-
```
225-
226-
227-
(install-index-create-volto-project-label)=
228-
229-
### Create a Volto project
230-
231-
Create a Volto project using the following shell command.
232-
233-
```shell
234-
npm init yo @plone/volto
235-
```
236-
237-
This will take some time ☕️.
238-
Toward the end of the process, it will ask you for a project name.
239-
Enter the name of your project, using only lowercase letters.
240-
It will create a directory with this name.
241-
Go to that directory and start the frontend with the following command.
25+
```{toctree}
26+
:maxdepth: 2
27+
:hidden: true
24228
243-
```shell
244-
yarn start
29+
containers/index
30+
source
24531
```
246-
247-
In your browser, visit [http://localhost:3000](http://localhost:3000/).
248-
249-
Congratulations!
250-
You have completed the installation of Plone 6 with Volto for its frontend.
251-
Welcome to Plone 6!
252-
253-
254-
(install-index-additional-references-label)=
255-
256-
## Additional references
257-
258-
- [Installation instructions from the Mastering Plone 6 training](https://training.plone.org/5/mastering-plone/installation.html)
259-
- {ref}`frontend-getting-started-installing-volto-label`
260-
- [Community post](https://community.plone.org/t/our-pip-based-development-workflow-for-plone/14562) on work in progress with [`plone-kickstarter`](https://github.com/bluedynamics/plone-kickstarter) and [`mxdev`](https://github.com/bluedynamics/mxdev).

docs/install/source.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
---
2+
html_meta:
3+
"description": "Install Plone 6 from source"
4+
"property=og:description": "Install Plone 6 from source"
5+
"property=og:title": "Install Plone 6 from source"
6+
"keywords": "Plone 6, install, installation, installing, buildout, pip, docker, source"
7+
---
8+
9+
10+
# Install from source for development
11+
12+
## Backend source / frontend source explanation
13+
14+
## Pip install / cookiecutter
15+
16+
## Mxdev
17+
18+
## Tox
19+
20+
## Deprecated installation methods
21+
22+
### Buildout
23+
24+
### Universal installer? (based on buildout) -> container

0 commit comments

Comments
 (0)