README.md
author ymh <ymh.work@gmail.com>
Mon, 09 Dec 2019 11:32:18 +0100
changeset 8 5617a61bc790
parent 3 5301eb6ce6e2
permissions -rw-r--r--
Added tag 0.4 for changeset 81d22971b333
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
     1
# pharmakon.fr Website
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
     2
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
     3
This project is the website for pharmakon.fr.
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
     4
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
     5
## Getting Started
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
     6
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
     7
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
     8
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
     9
### Prerequisites
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    10
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    11
What things you need to install the software and how to install them
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    12
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    13
  - docker
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    14
  - docker-compose
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    15
  - A code editor
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    16
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    17
In you local dns (/etc/hosts for example), map you Docker machine IP to the domain name `pharmakon.test`.
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    18
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    19
### Installing
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    20
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    21
Build docker images:
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    22
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    23
```
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    24
$ docker-compose build
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    25
```
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    26
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    27
Launch the project
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    28
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    29
```
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    30
$ docker-compose up
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    31
```
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    32
or
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    33
```
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    34
$ docker-compose up -d
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    35
```
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    36
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    37
import data.
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    38
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    39
```
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    40
$ docker-compose exec -T wp /var/www/html/vendor/bin/wp --allow-root db import - < /path/to/pharmakon_dbase.sql
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    41
```
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    42
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    43
Replace strings in database:
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    44
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    45
```
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    46
docker-compose exec wp /var/www/html/vendor/bin/wp --allow-root search-replace http://pharmakon.fr http://pharmakon.test:8080
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    47
```
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    48
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    49
Import media files:
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    50
```
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    51
$ tar -C src/web/app/ -zxf /path/to/pharmakon_media.tar.gz 
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    52
```
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    53
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    54
Navigate to http://pharmakon.test:8080.
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    55
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    56
## Data management
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    57
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    58
**!! BEWARE !!**: Do not launch the `docker-compose down` command before exporting data. This command delete the `db` container's data volume end therefore delete the database.
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    59
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    60
### Export database
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    61
```
3
5301eb6ce6e2 add missing files
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
    62
$ docker-compose exec wp /var/www/html/vendor/bin/wp --allow-root db export --add-drop-table - > "pharmakon_dbase_$(date '+%Y-%m-%d').sql"
0
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    63
```
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    64
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    65
### Export media
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    66
```
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    67
$ tar zcf "pharmakon_media_$(date '+%Y-%m-%d').tar.gz" -C src/web/app/ uploads
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    68
```
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    69
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    70
### Import database
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    71
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    72
```
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    73
$ docker-compose exec -T wp /var/www/html/vendor/bin/wp --allow-root db import - < pharmakon_dbase_2019-04-19.sql
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    74
```
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    75
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    76
If needed do a search replace after this to update the site urls:
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    77
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    78
```
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    79
$ docker-compose exec wp /var/www/html/vendor/bin/wp --allow-root search-replace https://pharmakon.fr http://pharmakon.test:8080
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    80
```
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    81
Set the template root
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    82
```
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    83
$ docker-compose exec -T wp /var/www/html/vendor/bin/wp --allow-root option set template_root "/var/www/pharmakon.fr/web/wp/wp-content/themes"
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    84
```
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    85
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    86
delete options
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    87
```
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    88
$ docker-compose exec -T wp /var/www/html/vendor/bin/wp --allow-root option delete _site_transient_update_themes
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    89
```
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    90
```
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    91
$ docker-compose exec -T wp /var/www/html/vendor/bin/wp --allow-root option delete _site_transient_theme_roots
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    92
```
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    93
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    94
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    95
Or change the administration password
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    96
```
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    97
$ docker-compose exec -T wp /var/www/html/vendor/bin/wp --allow-root user update admin --prompt=user_pass
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    98
```
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
    99
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   100
Flush cache
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   101
```
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   102
$ docker-compose exec -T wp /var/www/html/vendor/bin/wp --allow-root cache flush
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   103
```
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   104
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   105
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   106
## Deployment
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   107
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   108
TODO...
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   109
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   110
## Built With
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   111
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   112
* [Wordpress](https://wordpress.org/) - The CMS used
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   113
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   114
## Versioning
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   115
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   116
We use [SemVer](http://semver.org/) for versioning. For the versions available, see the [tags on this repository](https://www.iri.centrepompidou.fr/dev/hg/pharmakon.fr/tags). 
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   117
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   118
## Authors
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   119
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   120
* **Yves-Marie Haussonne** - *Initial work*
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   121
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   122
## License
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   123
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   124
This project is licensed under the CecCill License - see the [LICENSE.md](LICENSE.md) file for details
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   125
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   126
## Acknowledgments
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   127
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   128
* Hat tip to anyone whose code was used
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   129
* Wordpress: https://wordpress.org/
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   130
* Bedrock: https://roots.io/bedrock
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   131
* Docker for local wordpress development: https://urre.me/writings/docker-for-local-wordpress-development/
505fe5249d9c add foundations for pharmakon (bedrock + deploy)
ymh <ymh.work@gmail.com>
parents:
diff changeset
   132