Running sprint at CNABing wordpress
This commit is contained in:
parent
d545ab4861
commit
d14e5885be
22
.drone.yml
22
.drone.yml
|
@ -1,22 +0,0 @@
|
||||||
---
|
|
||||||
kind: pipeline
|
|
||||||
name: deploy to swarm.autonomic.zone
|
|
||||||
steps:
|
|
||||||
- name: deployment
|
|
||||||
image: decentral1se/drone-stack:19.03.8-override-compose
|
|
||||||
settings:
|
|
||||||
compose: docker-compose.yml
|
|
||||||
host: tcp://swarm.autonomic.zone:2376
|
|
||||||
override_compose: docker-compose.production.yml
|
|
||||||
stack_name: wordpress
|
|
||||||
tlsverify: true
|
|
||||||
environment:
|
|
||||||
PLUGIN_CACERT:
|
|
||||||
from_secret: docker_cacert
|
|
||||||
PLUGIN_CERT:
|
|
||||||
from_secret: docker_cert
|
|
||||||
PLUGIN_KEY:
|
|
||||||
from_secret: docker_key
|
|
||||||
trigger:
|
|
||||||
branch:
|
|
||||||
- master
|
|
|
@ -1,11 +1,7 @@
|
||||||
# wordpress
|
# wordpress
|
||||||
|
|
||||||
[![Build Status](https://drone.autonomic.zone/api/badges/autonomic-cooperative/wordpress/status.svg)](https://drone.autonomic.zone/autonomic-cooperative/wordpress)
|
|
||||||
|
|
||||||
> https://wordpress.org
|
> https://wordpress.org
|
||||||
|
|
||||||
> https://wp.swarm.autonomic.zone
|
|
||||||
|
|
||||||
## Development
|
## Development
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
@ -25,8 +21,3 @@ of something like [wait-for-it](https://github.com/vishnubob/wait-for-it)
|
||||||
because the `depends_on` stanza makes Docker swarm wait for it to come up on
|
because the `depends_on` stanza makes Docker swarm wait for it to come up on
|
||||||
the production deploy. So, we can just avoid doing this altogether for the
|
the production deploy. So, we can just avoid doing this altogether for the
|
||||||
development workflow to save ourselves work.
|
development workflow to save ourselves work.
|
||||||
|
|
||||||
## Production
|
|
||||||
|
|
||||||
1. Our [drone.autonomic.zone](https://drone.autonomic.zone/autonomic-cooperative/wordpress/) configuration automatically deploys.
|
|
||||||
1. For a manual deploy guide, see [this documentation](https://git.autonomic.zone/autonomic-cooperative/organising/wiki/working-with-docker-swarm).
|
|
||||||
|
|
|
@ -1,19 +0,0 @@
|
||||||
---
|
|
||||||
version: "3.7"
|
|
||||||
|
|
||||||
services:
|
|
||||||
wordpress:
|
|
||||||
ports:
|
|
||||||
- "8010:80"
|
|
||||||
environment:
|
|
||||||
- WORDPRESS_DB_HOST=mariadb
|
|
||||||
- WORDPRESS_DB_USER=wordpress
|
|
||||||
- WORDPRESS_DB_PASSWORD=wordpress
|
|
||||||
- WORDPRESS_DB_NAME=wordpress
|
|
||||||
|
|
||||||
mariadb:
|
|
||||||
environment:
|
|
||||||
- MYSQL_ROOT_PASSWORD=somewordpress
|
|
||||||
- MYSQL_DATABASE=wordpress
|
|
||||||
- MYSQL_USER=wordpress
|
|
||||||
- MYSQL_PASSWORD=wordpress
|
|
|
@ -0,0 +1,67 @@
|
||||||
|
---
|
||||||
|
version: "3.7"
|
||||||
|
|
||||||
|
services:
|
||||||
|
wordpress:
|
||||||
|
image: wordpress:5.4.1
|
||||||
|
ports:
|
||||||
|
- 3050:80
|
||||||
|
volumes:
|
||||||
|
- wp:/var/www/html
|
||||||
|
networks:
|
||||||
|
- backend
|
||||||
|
- proxy
|
||||||
|
environment:
|
||||||
|
- WORDPRESS_DB_HOST=mariadb
|
||||||
|
- WORDPRESS_DB_USER=wordpress
|
||||||
|
- WORDPRESS_DB_PASSWORD_FILE=/run/secrets/wp-db-passwd-v1
|
||||||
|
- WORDPRESS_DB_NAME=wordpress
|
||||||
|
secrets:
|
||||||
|
- wp-db-passwd-v1
|
||||||
|
deploy:
|
||||||
|
mode: replicated
|
||||||
|
replicas: 1
|
||||||
|
update_config:
|
||||||
|
failure_action: rollback
|
||||||
|
placement:
|
||||||
|
constraints:
|
||||||
|
- node.role == manager
|
||||||
|
labels:
|
||||||
|
traefik.enable: "true"
|
||||||
|
traefik.http.services.wordpress.loadbalancer.server.port: "80"
|
||||||
|
traefik.http.routers.wordpress.rule: "Host(`wp.swarm.autonomic.zone`)"
|
||||||
|
traefik.http.routers.wordpress.entrypoints: "web-secure"
|
||||||
|
traefik.http.routers.wordpress.tls.certresolver: "staging"
|
||||||
|
|
||||||
|
mariadb:
|
||||||
|
image: mariadb:10.5
|
||||||
|
volumes:
|
||||||
|
- db:/var/lib/mysql
|
||||||
|
networks:
|
||||||
|
- backend
|
||||||
|
environment:
|
||||||
|
- MYSQL_ROOT_PASSWORD_FILE=/run/secrets/mysql-root-passwd-v1
|
||||||
|
- MYSQL_DATABASE=wordpress
|
||||||
|
- MYSQL_USER=wordpress
|
||||||
|
- MYSQL_PASSWORD_FILE=/run/secrets/mysql-user-passwd-v1
|
||||||
|
secrets:
|
||||||
|
- mysql-root-passwd-v1
|
||||||
|
- mysql-user-passwd-v1
|
||||||
|
|
||||||
|
networks:
|
||||||
|
backend:
|
||||||
|
driver: overlay
|
||||||
|
proxy:
|
||||||
|
external: true
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
db:
|
||||||
|
wp:
|
||||||
|
|
||||||
|
secrets:
|
||||||
|
wp-db-passwd-v1:
|
||||||
|
external: true
|
||||||
|
mysql-root-passwd-v1:
|
||||||
|
external: true
|
||||||
|
mysql-user-passwd-v1:
|
||||||
|
external: true
|
|
@ -1,11 +1,23 @@
|
||||||
---
|
---
|
||||||
version: "3.7"
|
version: 3.7
|
||||||
|
|
||||||
services:
|
services:
|
||||||
wordpress:
|
wordpress:
|
||||||
image: wordpress:5.4.1
|
image: wordpress:5.4.1
|
||||||
|
ports:
|
||||||
|
- 8010:80
|
||||||
depends_on:
|
depends_on:
|
||||||
- mariadb
|
- mariadb
|
||||||
|
environment:
|
||||||
|
WORDPRESS_DB_HOST: mariadb
|
||||||
|
WORDPRESS_DB_USER: wordpress
|
||||||
|
WORDPRESS_DB_PASSWORD: wordpress
|
||||||
|
WORDPRESS_DB_NAME: wordpress
|
||||||
|
|
||||||
mariadb:
|
mariadb:
|
||||||
image: mariadb:10.5
|
image: mariadb:10.5
|
||||||
|
environment:
|
||||||
|
MYSQL_ROOT_PASSWORD: somewordpress
|
||||||
|
MYSQL_DATABASE: wordpress
|
||||||
|
MYSQL_USER: wordpress
|
||||||
|
MYSQL_PASSWORD: wordpress
|
||||||
|
|
|
@ -0,0 +1,3 @@
|
||||||
|
wordpress:
|
||||||
|
port: 8000
|
||||||
|
domain: foobar.com
|
|
@ -3,8 +3,9 @@ version: "3.7"
|
||||||
|
|
||||||
services:
|
services:
|
||||||
wordpress:
|
wordpress:
|
||||||
|
image: "wordpress:5.4.1"
|
||||||
ports:
|
ports:
|
||||||
- "3050:80"
|
- "${wordpress.port}:80"
|
||||||
volumes:
|
volumes:
|
||||||
- "wp:/var/www/html"
|
- "wp:/var/www/html"
|
||||||
networks:
|
networks:
|
||||||
|
@ -26,13 +27,14 @@ services:
|
||||||
constraints:
|
constraints:
|
||||||
- node.role == manager
|
- node.role == manager
|
||||||
labels:
|
labels:
|
||||||
- "traefik.enable=true"
|
traefik.enable: "true"
|
||||||
- "traefik.http.services.wordpress.loadbalancer.server.port=80"
|
traefik.http.services.wordpress.loadbalancer.server.port: "80"
|
||||||
- "traefik.http.routers.wordpress.rule=Host(`wp.swarm.autonomic.zone`)"
|
traefik.http.routers.wordpress.rule: "Host(`${wordpress.domain}`)"
|
||||||
- "traefik.http.routers.wordpress.entrypoints=web-secure"
|
traefik.http.routers.wordpress.entrypoints: "web-secure"
|
||||||
- "traefik.http.routers.wordpress.tls.certresolver=staging"
|
traefik.http.routers.wordpress.tls.certresolver: "staging"
|
||||||
|
|
||||||
mariadb:
|
mariadb:
|
||||||
|
image: "mariadb:10.5"
|
||||||
volumes:
|
volumes:
|
||||||
- "db:/var/lib/mysql"
|
- "db:/var/lib/mysql"
|
||||||
networks:
|
networks:
|
|
@ -0,0 +1,9 @@
|
||||||
|
---
|
||||||
|
version: 0.1.0
|
||||||
|
name: wordpress
|
||||||
|
description: |
|
||||||
|
WordPress is open source software you can use to create a beautiful website,
|
||||||
|
blog, or app.
|
||||||
|
maintainers:
|
||||||
|
- name: decentral1se
|
||||||
|
email: lukewm@riseup.net
|
|
@ -0,0 +1,3 @@
|
||||||
|
wordpress:
|
||||||
|
port: 3050
|
||||||
|
domain: example.com
|
Reference in New Issue