Skip to content

Commit f2e878e

Browse files
authored
Merge pull request plone#1250 from plone/containers-clean-up
Containers clean up
2 parents f88130c + e081ad0 commit f2e878e

File tree

12 files changed

+185
-106
lines changed

12 files changed

+185
-106
lines changed

docs/glossary.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -289,6 +289,9 @@ DPI
289289
Docker
290290
[Docker](https://www.docker.com/) is an open platform for developing, shipping, and running applications using containers.
291291
292+
Docker Compose
293+
[Docker Compose](https://docs.docker.com/compose/) is a tool for defining and running multi-container Docker applications.
294+
292295
RelStorage
293296
[RelStorage](https://relstorage.readthedocs.io/en/latest/) is a storage implementation for ZODB that stores pickles in a relational database.
294297
@@ -297,4 +300,10 @@ ZEO
297300
298301
PostgreSQL
299302
[PostgreSQL](https://www.postgresql.org/) is a powerful, open source object-relational database.
303+
304+
HAProxy
305+
[HAProxy](https://www.haproxy.org/) is a free, very fast and reliable reverse-proxy offering high availability, load balancing, and proxying for TCP and HTTP-based applications.
306+
307+
nginx
308+
[nginx](https://docs.nginx.com/nginx/) (pronounced "engine x") is an HTTP and reverse proxy server, a mail proxy server, and a generic TCP/UDP proxy server, originally written by Igor Sysoev.
300309
```

docs/install/containers/examples/haproxy-plone-zeo.md

Lines changed: 22 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,18 @@
11
---
22
html_meta:
3-
"description": "Simple Plone 6 setup with scalable backend and data being persisted in a Zeo volume."
4-
"property=og:description": "Simple Plone 6 setup with scalable backend and data being persisted in a Zeo volume."
5-
"property=og:title": "HAproxy, Backend, ZEO container example"
6-
"keywords": "Plone 6, Container, Docker, HAproxy, Zeo"
3+
"description": "Simple Plone 6 setup with scalable backend and data being persisted in a ZEO volume."
4+
"property=og:description": "Simple Plone 6 setup with scalable backend and data being persisted in a ZEO volume."
5+
"property=og:title": "HAProxy, Backend, ZEO container example"
6+
"keywords": "Plone 6, Container, Docker, HAProxy, ZEO"
77
---
88

9-
# Haproxy, Backend, ZEO container example
9+
# HAProxy, Backend, ZEO container example
1010

11-
Very simple setup with only one or more backend instances accessing a ZEO server and data being persisted in a Docker volume.
11+
This example is a very simple setup with one or more backend instances accessing a ZEO server and data being persisted in a Docker volume.
12+
13+
{term}`HAProxy` is used for load balancing in this example.
14+
We will use the image [`plone/plone-haproxy`](https://github.com/plone/plone-haproxy).
1215

13-
HAProxy is used for load balancing in this example.
1416

1517
## Setup
1618

@@ -58,20 +60,28 @@ volumes:
5860
data: {}
5961
```
6062
63+
6164
## Build the project with multiple backends
6265
63-
Run `docker-compose up -d --scale backend=4` from your project directory.
66+
Run `docker compose up -d --scale backend=4` from your project directory.
67+
6468

6569
## Access Plone via Browser
6670

67-
Point your browser at `http://localhost:8080`, using the username and password combination of `admin` and `admin`, and you should see the default Plone site creation page.
71+
Point your browser at `http://localhost:8080`.
72+
Login using the username and password combination of `admin` and `admin`.
73+
You should see the default Plone site creation page.
74+
6875

6976
## Access HAProxy Stats Page via Browser
7077

71-
Point your browser at `http://localhost:1936`, using the username and password combination of `admin` and `admin`, and you should see HAProxy statistics for your Plone cluster.
78+
Point your browser at `http://localhost:1936`.
79+
Login using the username and password combination of `admin` and `admin`.
80+
You should see HAProxy statistics for your Plone cluster.
81+
7282

7383
## Shutdown and cleanup
7484

75-
The command `docker-compose down` removes the containers and default network, but preserves the Plone database.
85+
The command `docker compose down` removes the containers and default network, but preserves the Plone database.
7686

77-
The command `docker-compose down --volumes` removes the containers, default network, and the Plone database.
87+
The command `docker compose down --volumes` removes the containers, default network, and the Plone database.

docs/install/containers/examples/index.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,12 @@ nginx-plone
1919
haproxy-plone-zeo
2020
```
2121

22-
Examples of projects running Plone using `docker-compose`.
22+
Examples of projects running Plone using `docker compose`.
2323

2424
| Project example | Description |
2525
| --- | --- |
26-
| [nginx-volto-plone](nginx-volto-plone) | Stack with nginx, Frontend and Backend |
27-
| [nginx-volto-plone-zeo](nginx-volto-plone-zeo) | Stack with nginx, Frontend, Backend and ZEO server |
28-
| [nginx-volto-plone-postgresql](nginx-volto-plone-postgresql) | Stack with nginx, Frontend, Backend and PostgreSQL DB |
29-
| [nginx-plone](nginx-plone) | Stack with nginx, and Backend (Plone Classic) |
30-
| [haproxy-plone-zeo](haproxy-plone-zeo) | Stack with haproxy, Backend and ZEO server |
26+
| [nginx-volto-plone](nginx-volto-plone) | Stack with nginx, Frontend, and Backend |
27+
| [nginx-volto-plone-zeo](nginx-volto-plone-zeo) | Stack with nginx, Frontend, Backend, and ZEO server |
28+
| [nginx-volto-plone-postgresql](nginx-volto-plone-postgresql) | Stack with nginx, Frontend, Backend, and PostgreSQL DB |
29+
| [nginx-plone](nginx-plone) | Stack with nginx and Backend (Plone Classic) |
30+
| [haproxy-plone-zeo](haproxy-plone-zeo) | Stack with HAProxy, Backend, and ZEO server |

docs/install/containers/examples/nginx-plone.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,15 @@
22
html_meta:
33
"description": "Simple Plone 6 setup with one backend and data being persisted in a Docker volume."
44
"property=og:description": "Simple Plone 6 setup with one backend and data being persisted in a Docker volume."
5-
"property=og:title": "Nginx, Plone Classic container example"
6-
"keywords": "Plone 6, Container, Docker, Nginx, Plone Classic"
5+
"property=og:title": "nginx, Plone Classic container example"
6+
"keywords": "Plone 6, Container, Docker, nginx, Plone Classic"
77
---
88

9-
# Nginx, Plone Classic container example
9+
# nginx, Plone Classic container example
1010

11-
Simple setup with one backend and data being persisted in a Docker volume.
11+
This example is a simple setup with one backend and data being persisted in a Docker volume.
1212

13-
Nginx in this example is used as a [reverse proxy](https://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/").
13+
{term}`nginx` in this example is used as a [reverse proxy](https://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/).
1414

1515

1616
## Setup
@@ -53,11 +53,11 @@ server {
5353
```
5454

5555
```{note}
56-
`http://plone.localhost/` is the url you will be using to access the website.
57-
You can either use `localhost`, or add it in your `etc/hosts` file or DNS to point to the docker host IP.
56+
`http://plone.localhost/` is the URL you will be using to access the website.
57+
You can either use `localhost`, or add it in your `/etc/hosts` file or DNS to point to the Docker host IP.
5858
```
5959

60-
### Service configuration with `docker-compose`
60+
### Service configuration with Docker Compose
6161

6262
Now let's create a `docker-compose.yml` file:
6363

@@ -91,10 +91,10 @@ volumes:
9191
9292
## Build the project
9393
94-
Start the stack with `docker-compose`.
94+
Start the stack with `docker compose`.
9595

9696
```shell
97-
docker-compose up -d
97+
docker compose up -d
9898
```
9999

100100
This pulls the needed images and starts Plone.
@@ -107,6 +107,6 @@ After startup, go to `http://plone.localhost/` and you should see the site.
107107

108108
## Shutdown and cleanup
109109

110-
The command `docker-compose down` removes the containers and default network, but preserves the Plone database.
110+
The command `docker compose down` removes the containers and default network, but preserves the Plone database.
111111

112-
The command `docker-compose down --volumes` removes the containers, default network, and the Plone database.
112+
The command `docker compose down --volumes` removes the containers, default network, and the Plone database.

docs/install/containers/examples/nginx-volto-plone-postgresql.md

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,15 @@
22
html_meta:
33
"description": "Very simple Plone 6 setup with only one or more backend instances accessing a PostgreSQL server and data being persisted in a Docker volume."
44
"property=og:description": "Very simple Plone 6 setup with only one or more backend instances accessing a PostgreSQL server and data being persisted in a Docker volume."
5-
"property=og:title": "Nginx, Frontend, Backend, PostgreSQL container example"
6-
"keywords": "Plone 6, Container, Docker, Nginx, Frontend, Backend, PostgreSQL, "
5+
"property=og:title": "nginx, Frontend, Backend, PostgreSQL container example"
6+
"keywords": "Plone 6, Container, Docker, nginx, Frontend, Backend, PostgreSQL, "
77
---
88

9-
# Nginx, Frontend, Backend, PostgreSQL container example
9+
# nginx, Frontend, Backend, PostgreSQL container example
1010

11-
Very simple setup with only one or more backend instances accessing a Postgres server and data being persisted in a Docker volume.
11+
This example is a very simple setup with one or more backend instances accessing a Postgres server and data being persisted in a Docker volume.
1212

13-
Nginx in this example is used as a [reverse proxy](https://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/").
13+
{term}`nginx` in this example is used as a [reverse proxy](https://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/).
1414

1515

1616
## Setup
@@ -78,11 +78,12 @@ server {
7878
```
7979

8080
```{note}
81-
`http://plone.localhost/` is the url you will be using to access the website.
82-
You can either use `localhost`, or add it in your `etc/hosts` file or DNS to point to the docker host IP.
81+
`http://plone.localhost/` is the URL you will be using to access the website.
82+
You can either use `localhost`, or add it in your `/etc/hosts` file or DNS to point to the Docker host IP.
8383
```
8484

85-
### Service configuration with `docker-compose`
85+
86+
### Service configuration with Docker Compose
8687

8788
Now let's create a `docker-compose.yml` file:
8889

@@ -137,10 +138,10 @@ volumes:
137138
138139
## Build the project
139140
140-
Start the stack with `docker-compose`.
141+
Start the stack with `docker compose`.
141142

142143
```shell
143-
docker-compose up -d
144+
docker compose up -d
144145
```
145146

146147
This pulls the needed images and starts Plone.
@@ -153,15 +154,15 @@ After startup, go to `http://plone.localhost/` and you should see the site.
153154

154155
## Increase the number of backends
155156

156-
To use two containers for backend, run `docker-compose` with `--scale`.
157+
To use two containers for backend, run `docker compose` with `--scale`.
157158

158159
```shell
159-
docker-compose up --scale backend=2
160+
docker compose up --scale backend=2
160161
```
161162

162163

163164
## Shutdown and cleanup
164165

165-
The command `docker-compose down` removes the containers and default network, but preserves the Plone database.
166+
The command `docker compose down` removes the containers and default network, but preserves the Plone database.
166167

167-
The command `docker-compose down --volumes` removes the containers, default network, and the Plone database.
168+
The command `docker compose down --volumes` removes the containers, default network, and the Plone database.

docs/install/containers/examples/nginx-volto-plone-zeo.md

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,16 @@
22
html_meta:
33
"description": "Very simple Plone 6 setup with only one or more backend instances accessing a ZEO server and data being persisted in a Docker volume."
44
"property=og:description": "Very simple Plone 6 setup with only one or more backend instances accessing a ZEO server and data being persisted in a Docker volume."
5-
"property=og:title": "Nginx, Frontend, Backend, ZEO container example"
6-
"keywords": "Plone 6, Container, Docker, Nginx, Frontend, Backend, ZEO"
5+
"property=og:title": "nginx, Frontend, Backend, ZEO container example"
6+
"keywords": "Plone 6, Container, Docker, nginx, Frontend, Backend, ZEO"
77
---
88

9-
# Nginx, Frontend, Backend, ZEO container example
9+
# nginx, Frontend, Backend, ZEO container example
1010

11-
Very simple setup with only one or more backend instances accessing a ZEO server and data being persisted in a Docker volume.
11+
This example is a very simple setup with one or more backend instances accessing a ZEO server and data being persisted in a Docker volume.
12+
13+
{term}`nginx` in this example is used as a [reverse proxy](https://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/).
1214

13-
Nginx in this example is used as a [reverse proxy](https://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/").
1415

1516
## Setup
1617

@@ -77,11 +78,12 @@ server {
7778
```
7879

7980
```{note}
80-
`http://plone.localhost/` is the url you will be using to access the website.
81-
You can either use `localhost`, or add it in your `etc/hosts` file or DNS to point to the docker host IP.
81+
`http://plone.localhost/` is the URL you will be using to access the website.
82+
You can either use `localhost`, or add it in your `/etc/hosts` file or DNS to point to the Docker host IP.
8283
```
8384

84-
### Service configuration with `docker-compose`
85+
86+
### Service configuration with Docker Compose
8587

8688
Now let's create a `docker-compose.yml` file:
8789

@@ -133,10 +135,10 @@ volumes:
133135
134136
## Build the project
135137
136-
Start the stack with `docker-compose`.
138+
Start the stack with `docker compose`.
137139

138140
```shell
139-
docker-compose up -d
141+
docker compose up -d
140142
```
141143

142144
This pulls the needed images and starts Plone.
@@ -149,15 +151,15 @@ After startup, go to `http://plone.localhost/` and you should see the site.
149151

150152
## Increase the number of backends
151153

152-
To use two containers for the backend, run `docker-compose` with `--scale`.
154+
To use two containers for the backend, run `docker compose` with `--scale`.
153155

154156
```shell
155-
docker-compose up --scale backend=2
157+
docker compose up --scale backend=2
156158
```
157159

158160

159161
## Shutdown and cleanup
160162

161-
The command `docker-compose down` removes the containers and default network, but preserves the Plone database.
163+
The command `docker compose down` removes the containers and default network, but preserves the Plone database.
162164

163-
The command `docker-compose down --volumes` removes the containers, default network, and the Plone database.
165+
The command `docker compose down --volumes` removes the containers, default network, and the Plone database.

docs/install/containers/examples/nginx-volto-plone.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,15 @@
22
html_meta:
33
"description": "Very simple Plone 6 setup with only one backend and data being persisted in a Docker volume."
44
"property=og:description": "Very simple Plone 6 setup with only one backend and data being persisted in a Docker volume."
5-
"property=og:title": "Nginx, Frontend, Backend container example"
6-
"keywords": "Plone 6, Container, Docker, Nginx, Frontend, Backend"
5+
"property=og:title": "nginx, Frontend, Backend container example"
6+
"keywords": "Plone 6, Container, Docker, nginx, Frontend, Backend"
77
---
88

9-
# Nginx, Frontend, Backend container example
9+
# nginx, Frontend, Backend container example
1010

11-
Very simple setup with only one backend and data being persisted in a Docker volume.
11+
This example is a very simple setup with one backend and data being persisted in a Docker volume.
1212

13-
Nginx in this example is used as a [reverse proxy](https://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/").
13+
{term}`nginx` in this example is used as a [reverse proxy](https://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/).
1414

1515
## Setup
1616

@@ -77,11 +77,11 @@ server {
7777
```
7878

7979
```{note}
80-
`http://plone.localhost/` is the url you will be using to access the website.
81-
You can either use `localhost`, or add it in your `etc/hosts` file or DNS to point to the docker host IP.
80+
`http://plone.localhost/` is the URL you will be using to access the website.
81+
You can either use `localhost`, or add it in your `/etc/hosts` file or DNS to point to the Docker host IP.
8282
```
8383

84-
### Service configuration with `docker-compose`
84+
### Service configuration with Docker Compose
8585

8686
Now let's create a `docker-compose.yml` file:
8787

@@ -124,10 +124,10 @@ volumes:
124124
125125
## Build the project
126126
127-
Start the stack with `docker-compose`.
127+
Start the stack with `docker compose`.
128128

129129
```shell
130-
docker-compose up -d
130+
docker compose up -d
131131
```
132132

133133
This pulls the needed images and starts Plone.
@@ -140,6 +140,6 @@ After startup, go to `http://plone.localhost/` and you should see the site.
140140

141141
## Shutdown and cleanup
142142

143-
The command `docker-compose down` removes the containers and default network, but preserves the Plone database.
143+
The command `docker compose down` removes the containers and default network, but preserves the Plone database.
144144

145-
The command `docker-compose down --volumes` removes the containers, default network, and the Plone database.
145+
The command `docker compose down --volumes` removes the containers, default network, and the Plone database.

0 commit comments

Comments
 (0)