From 84d0632a2df1cf833610bc8dd45d4808e4a8dc0e Mon Sep 17 00:00:00 2001 From: VirtualTam Date: Sat, 29 Jul 2017 15:26:27 +0200 Subject: docker: remove `dev` image, update documentation Relates to https://github.com/shaarli/Shaarli/issues/843 Changed: - Update Docker image list - Update Docker documentation structure Removed: - Delete Dockerfile and resources for the `dev` image - Cleanup `doc/` resources Signed-off-by: VirtualTam --- doc/Docker.md | 158 --------------------------- doc/REST-API.md | 105 ------------------ doc/Versioning-and-Branches.md | 76 ------------- doc/_Sidebar.md | 39 ------- doc/md/Docker-101.md | 62 ----------- doc/md/Docker-resources.md | 19 ---- doc/md/Reverse-proxy-configuration.md | 6 - doc/md/Shaarli-images.md | 72 ------------ doc/md/docker/docker-101.md | 62 +++++++++++ doc/md/docker/resources.md | 19 ++++ doc/md/docker/reverse-proxy-configuration.md | 6 + doc/md/docker/shaarli-images.md | 71 ++++++++++++ 12 files changed, 158 insertions(+), 537 deletions(-) delete mode 100644 doc/Docker.md delete mode 100644 doc/REST-API.md delete mode 100644 doc/Versioning-and-Branches.md delete mode 100644 doc/_Sidebar.md delete mode 100644 doc/md/Docker-101.md delete mode 100644 doc/md/Docker-resources.md delete mode 100644 doc/md/Reverse-proxy-configuration.md delete mode 100644 doc/md/Shaarli-images.md create mode 100644 doc/md/docker/docker-101.md create mode 100644 doc/md/docker/resources.md create mode 100644 doc/md/docker/reverse-proxy-configuration.md create mode 100644 doc/md/docker/shaarli-images.md (limited to 'doc') diff --git a/doc/Docker.md b/doc/Docker.md deleted file mode 100644 index a7d2efb5..00000000 --- a/doc/Docker.md +++ /dev/null @@ -1,158 +0,0 @@ -#Docker -- [Docker usage](#docker-usage)[](.html) -- [Get and run a Shaarli image](#get-and-run-a-shaarli-image)[](.html) -- [Resources](#resources)[](.html) - -## Docker usage -### Basics -Install [Docker](https://www.docker.com/), by following the instructions relevant[](.html) -to your OS / distribution, and start the service. - -#### Search an image on [DockerHub](https://hub.docker.com/)[](.html) - -```bash -$ docker search debian - -NAME DESCRIPTION STARS OFFICIAL AUTOMATED -ubuntu Ubuntu is a Debian-based Linux operating s... 2065 [OK][](.html) -debian Debian is a Linux distribution that's comp... 603 [OK][](.html) -google/debian 47 [OK][](.html) -``` - -#### Show available tags for a repository -```bash -$ curl https://index.docker.io/v1/repositories/debian/tags | python -m json.tool - -% Total % Received % Xferd Average Speed Time Time Time Current -Dload Upload Total Spent Left Speed -100 1283 0 1283 0 0 433 0 --:--:-- 0:00:02 --:--:-- 433 -``` - -Sample output: -```json -[[](.html) - { - "layer": "85a02782", - "name": "stretch" - }, - { - "layer": "59abecbc", - "name": "testing" - }, - { - "layer": "bf0fd686", - "name": "unstable" - }, - { - "layer": "60c52dbe", - "name": "wheezy" - }, - { - "layer": "c5b806fe", - "name": "wheezy-backports" - } -] - -``` - -#### Pull an image from DockerHub -```bash -$ docker pull repository[:tag][](.html) - -$ docker pull debian:wheezy -wheezy: Pulling from debian -4c8cbfd2973e: Pull complete -60c52dbe9d91: Pull complete -Digest: sha256:c584131da2ac1948aa3e66468a4424b6aea2f33acba7cec0b631bdb56254c4fe -Status: Downloaded newer image for debian:wheezy -``` - -## Get and run a Shaarli image -### DockerHub repository -The images can be found in the [`shaarli/shaarli`](https://hub.docker.com/r/shaarli/shaarli/)[](.html) -repository. - -### Available image tags -- `latest`: master branch (tarball release) -- `stable`: stable branch (tarball release) -- `dev`: master branch (Git clone) - -All images rely on: -- [Debian 8 Jessie](https://hub.docker.com/_/debian/)[](.html) -- [PHP5-FPM](http://php-fpm.org/)[](.html) -- [Nginx](http://nginx.org/)[](.html) - -### Download from DockerHub -```bash -$ docker pull shaarli/shaarli -latest: Pulling from shaarli/shaarli -32716d9fcddb: Pull complete -84899d045435: Pull complete -4b6ad7444763: Pull complete -e0345ef7a3e0: Pull complete -5c1dd344094f: Pull complete -6422305a200b: Pull complete -7d63f861dbef: Pull complete -3eb97210645c: Pull complete -869319d746ff: Already exists -869319d746ff: Pulling fs layer -902b87aaaec9: Already exists -Digest: sha256:f836b4627b958b3f83f59c332f22f02fcd495ace3056f2be2c4912bd8704cc98 -Status: Downloaded newer image for shaarli/shaarli:latest -``` - -### Create and start a new container from the image -```bash -# map the host's :8000 port to the container's :80 port -$ docker create -p 8000:80 shaarli/shaarli -d40b7af693d678958adedfb88f87d6ea0237186c23de5c4102a55a8fcb499101 - -# launch the container in the background -$ docker start d40b7af693d678958adedfb88f87d6ea0237186c23de5c4102a55a8fcb499101 -d40b7af693d678958adedfb88f87d6ea0237186c23de5c4102a55a8fcb499101 - -# list active containers -$ docker ps -CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES -d40b7af693d6 shaarli/shaarli /usr/bin/supervisor 15 seconds ago Up 4 seconds 0.0.0.0:8000->80/tcp backstabbing_galileo -``` - -### Stop and destroy a container -```bash -$ docker stop backstabbing_galileo # those docker guys are really rude to physicists! -backstabbing_galileo - -# check the container is stopped -$ docker ps -CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES - -# list ALL containers -$ docker ps -a -CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES -d40b7af693d6 shaarli/shaarli /usr/bin/supervisor 5 minutes ago Exited (0) 48 seconds ago backstabbing_galileo - -# destroy the container -$ docker rm backstabbing_galileo # let's put an end to these barbarian practices -backstabbing_galileo - -$ docker ps -a -CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES -``` - -## Resources -### Docker -- [Interactive Docker training portal](https://www.katacoda.com/courses/docker/) on [Katakoda](https://www.katacoda.com/)[](.html) -- [Where are Docker images stored?](http://blog.thoward37.me/articles/where-are-docker-images-stored/)[](.html) -- [Dockerfile reference](https://docs.docker.com/reference/builder/)[](.html) -- [Dockerfile best practices](https://docs.docker.com/articles/dockerfile_best-practices/)[](.html) -- [Volumes](https://docs.docker.com/userguide/dockervolumes/)[](.html) - -### DockerHub -- [Repositories](https://docs.docker.com/userguide/dockerrepos/)[](.html) -- [Teams and organizations](https://docs.docker.com/docker-hub/orgs/)[](.html) -- [GitHub automated build](https://docs.docker.com/docker-hub/github/)[](.html) - -### Service management -- [Using supervisord](https://docs.docker.com/articles/using_supervisord/)[](.html) -- [Nginx in the foreground](http://nginx.org/en/docs/ngx_core_module.html#daemon)[](.html) -- [supervisord](http://supervisord.org/)[](.html) diff --git a/doc/REST-API.md b/doc/REST-API.md deleted file mode 100644 index d7909978..00000000 --- a/doc/REST-API.md +++ /dev/null @@ -1,105 +0,0 @@ -#REST API -## Usage - -See the [REST API documentation](http://shaarli.github.io/api-documentation/).[](.html) - -## Authentication - -All requests to Shaarli's API must include a JWT token to verify their authenticity. - -This token has to be included as an HTTP header called `Authentication: Bearer `. - -JWT resources : - - * [jwt.io](https://jwt.io) (including a list of client per language).[](.html) - * RFC : https://tools.ietf.org/html/rfc7519 - * https://float-middle.com/json-web-tokens-jwt-vs-sessions/ - * HackerNews thread: https://news.ycombinator.com/item?id=11929267 - - -### Shaarli JWT Token - -JWT tokens are composed by three parts, separated by a dot `.` and encoded in base64: - -``` -[header].[payload].[signature][](.html) -``` - -#### Header - -Shaarli only allow one hash algorithm, so the header will always be the same: - -```json -{ - "typ": "JWT", - "alg": "HS512" -} -``` - -Encoded in base64, it gives: - -``` -ewogICAgICAgICJ0eXAiOiAiSldUIiwKICAgICAgICAiYWxnIjogIkhTNTEyIgogICAgfQ== -``` - -#### Payload - -**Validity duration** - -To avoid infinite token validity, JWT tokens must include their creation date in UNIX timestamp format (timezone independant - UTC) under the key `iat` (issued at). This token will be accepted during 9 minutes. - -```json -{ - "iat": 1468663519 -} -``` - -See [RFC reference](https://tools.ietf.org/html/rfc7519#section-4.1.6).[](.html) - - -#### Signature - -The signature authenticate the token validity. It contains the base64 of the header and the body, separated by a dot `.`, hashed in SHA512 with the API secret available in Shaarli administration page. - -Signature example with PHP: - -```php -$content = base64_encode($header) . '.' . base64_encode($payload); -$signature = hash_hmac('sha512', $content, $secret); -``` - - -### Complete example - -#### PHP - -```php -function generateToken($secret) { - $header = base64_encode('{ - "typ": "JWT", - "alg": "HS512" - }'); - $payload = base64_encode('{ - "iat": '. time() .' - }'); - $signature = hash_hmac('sha512', $header .'.'. $payload , $secret); - return $header .'.'. $payload .'.'. $signature; -} - -$secret = 'mysecret'; -$token = generateToken($secret); -echo $token; -``` - -> `ewogICAgICAgICJ0eXAiOiAiSldUIiwKICAgICAgICAiYWxnIjogIkhTNTEyIgogICAgfQ==.ewogICAgICAgICJpYXQiOiAxNDY4NjY3MDQ3CiAgICB9.1d2c54fa947daf594fdbf7591796195652c8bc63bffad7f6a6db2a41c313f495a542cbfb595acade79e83f3810d709b4251d7b940bbc10b531a6e6134af63a68` - -```php -$options = [[](.html) - 'http' => [[](.html) - 'method' => 'GET', - 'jwt' => $token, - ], -]; -$context = stream_context_create($options); -file_get_contents($apiEndpoint, false, $context); -``` diff --git a/doc/Versioning-and-Branches.md b/doc/Versioning-and-Branches.md deleted file mode 100644 index bbc7719e..00000000 --- a/doc/Versioning-and-Branches.md +++ /dev/null @@ -1,76 +0,0 @@ -#Versioning and Branches -[**WORK IN PROGRESS**][](.html) - -It's important to understand how Shaarli branches work, especially if you're maintaining a 3rd party tools for Shaarli (theme, plugin, etc.), to be sure stay compatible. - -## `master` branch - -The `master` branch is the development branch. Any new change MUST go through this branch using Pull Requests. - -Remarks: - - * This branch shouldn't be used for production as it isn't necessary stable. - * 3rd party aren't required to be compatible with the latest changes. - * Official plugins, themes and libraries (contained within Shaarli organization repos) must be compatible with the master branch. - * The version in this branch is always `dev`. - -## `v0.x` branch - -This `v0.x` branch, points to the latest `v0.x.y` release. - -Explanation: - -When a new version is released, it might contains a major bug which isn't detected right away. For example, a new PHP version is released, containing backward compatibility issue which doesn't work with Shaarli. - -In this case, the issue is fixed in the `master` branch, and the fix is backported the to the `v0.x` branch. Then a new release is made from the `v0.x` branch. - -This workflow allow us to fix any major bug detected, without having to release bleeding edge feature too soon. - -## `latest` branch - -This branch point the latest release. It recommended to use it to get the latest tested changes. - -## `stable` branch - -The `stable` branch doesn't contain any major bug, and is one major digit version behind the latest release. - -For example, the current latest release is `v0.8.3`, the stable branch is an alias to the latest `v0.7.x` release. When the `v0.9.0` version will be released, the stable will move to the latest `v0.8.x` release. - -Remarks: - - * Shaarli release pace isn't fast, and the stable branch might be a few months behind the latest release. - -## Releases - -Releases are always made from the latest `v0.x` branch. - -Note that for every release, we manually generate a tarball which contains all Shaarli dependencies, making Shaarli's installation only one step. - -## Advices on 3rd party git repos workflow - -### Versioning - -Any time a new Shaarli release is published, you should publish a new release of your repo if the changes affected you since the latest release (take a look at the [changelog](https://github.com/shaarli/Shaarli/releases) (*Draft* means not released yet) and the commit log (like [`tpl` folder](https://github.com/shaarli/Shaarli/commits/master/tpl/default) for themes)). You can either:[](.html) - - - use the Shaarli version number, with your repo version. For example, if Shaarli `v0.8.3` is released, publish a `v0.8.3-1` release, where `v0.8.3` states Shaarli compatibility and `-1` is your own version digit for the current Shaarli version. - - use your own versioning scheme, and state Shaarli compatibility in the release description. - -Using this, any user will be able to pick the release matching his own Shaarli version. - -### Major bugfix backport releases - -To be able to support backported fixes, it recommended to use our workflow: - -```bash -# In master, fix the major bug -git commit -m "Katastrophe" -git push origin master -# Get your commit hash -git log --format="%H" -n 1 -# Create a new branch from your latest release, let's say v0.8.2-1 (the tag name) -git checkout -b katastrophe v0.8.2-1 -# Backport the fix commit to your brand new branch -git cherry-pick -git push origin katastrophe -# Then you just have to make a new release from the `katastrophe` branch tagged `v0.8.3-1` -``` diff --git a/doc/_Sidebar.md b/doc/_Sidebar.md deleted file mode 100644 index 8df2e565..00000000 --- a/doc/_Sidebar.md +++ /dev/null @@ -1,39 +0,0 @@ -#_Sidebar -- [Home](Home.html) -- Setup - - [Download and Installation](Download-and-Installation.html) - - [Upgrade and migration](Upgrade-and-migration.html) - - [Server requirements](Server-requirements.html) - - [Server configuration](Server-configuration.html) - - [Server security](Server-security.html) - - [Shaarli configuration](Shaarli-configuration.html) - - [Plugins](Plugins.html) -- [Docker](Docker.html) -- [Usage](Usage.html) - - [Sharing button](Sharing-button.html) (bookmarklet) - - [Browsing and Searching](Browsing-and-Searching.html) - - [Firefox share](Firefox-share.html) - - [RSS feeds](RSS-feeds.html) - - [REST API](REST-API.html) -- How To - - [Backup, restore, import and export](Backup,-restore,-import-and-export.html) - - [Copy an existing installation over SSH and serve it locally](Copy-an-existing-installation-over-SSH-and-serve-it-locally.html) - - [Create and serve multiple Shaarlis (farm)](Create-and-serve-multiple-Shaarlis-(farm).html) - - [Download CSS styles from an OPML list](Download-CSS-styles-from-an-OPML-list.html) - - [Datastore hacks](Datastore-hacks.html) -- [Troubleshooting](Troubleshooting.html) -- [Development](Development.html) - - [GnuPG signature](GnuPG-signature.html) - - [Coding guidelines](Coding-guidelines.html) - - [Directory structure](Directory-structure.html) - - [3rd party libraries](3rd-party-libraries.html) - - [Plugin System](Plugin-System.html) - - [Release Shaarli](Release-Shaarli.html) - - [Versioning and Branches](Versioning-and-Branches.html) - - [Security](Security.html) - - [Static analysis](Static-analysis.html) - - [Theming](Theming.html) - - [Unit tests](Unit-tests.html) -- About - - [FAQ](FAQ.html) - - [Community & Related software](Community-&-Related-software.html) diff --git a/doc/md/Docker-101.md b/doc/md/Docker-101.md deleted file mode 100644 index b02dd149..00000000 --- a/doc/md/Docker-101.md +++ /dev/null @@ -1,62 +0,0 @@ -## Basics -Install [Docker](https://www.docker.com/), by following the instructions relevant -to your OS / distribution, and start the service. - -### Search an image on [DockerHub](https://hub.docker.com/) - -```bash -$ docker search debian - -NAME DESCRIPTION STARS OFFICIAL AUTOMATED -ubuntu Ubuntu is a Debian-based Linux operating s... 2065 [OK] -debian Debian is a Linux distribution that's comp... 603 [OK] -google/debian 47 [OK] -``` - -### Show available tags for a repository -```bash -$ curl https://index.docker.io/v1/repositories/debian/tags | python -m json.tool - -% Total % Received % Xferd Average Speed Time Time Time Current -Dload Upload Total Spent Left Speed -100 1283 0 1283 0 0 433 0 --:--:-- 0:00:02 --:--:-- 433 -``` - -Sample output: -```json -[ - { - "layer": "85a02782", - "name": "stretch" - }, - { - "layer": "59abecbc", - "name": "testing" - }, - { - "layer": "bf0fd686", - "name": "unstable" - }, - { - "layer": "60c52dbe", - "name": "wheezy" - }, - { - "layer": "c5b806fe", - "name": "wheezy-backports" - } -] - -``` - -### Pull an image from DockerHub -```bash -$ docker pull repository[:tag] - -$ docker pull debian:wheezy -wheezy: Pulling from debian -4c8cbfd2973e: Pull complete -60c52dbe9d91: Pull complete -Digest: sha256:c584131da2ac1948aa3e66468a4424b6aea2f33acba7cec0b631bdb56254c4fe -Status: Downloaded newer image for debian:wheezy -``` diff --git a/doc/md/Docker-resources.md b/doc/md/Docker-resources.md deleted file mode 100644 index 082d4a46..00000000 --- a/doc/md/Docker-resources.md +++ /dev/null @@ -1,19 +0,0 @@ -### Docker - -- [Interactive Docker training portal](https://www.katacoda.com/courses/docker/) on [Katakoda](https://www.katacoda.com/) -- [Where are Docker images stored?](http://blog.thoward37.me/articles/where-are-docker-images-stored/) -- [Dockerfile reference](https://docs.docker.com/reference/builder/) -- [Dockerfile best practices](https://docs.docker.com/articles/dockerfile_best-practices/) -- [Volumes](https://docs.docker.com/userguide/dockervolumes/) - -### DockerHub - -- [Repositories](https://docs.docker.com/userguide/dockerrepos/) -- [Teams and organizations](https://docs.docker.com/docker-hub/orgs/) -- [GitHub automated build](https://docs.docker.com/docker-hub/github/) - -### Service management - -- [Using supervisord](https://docs.docker.com/articles/using_supervisord/) -- [Nginx in the foreground](http://nginx.org/en/docs/ngx_core_module.html#daemon) -- [supervisord](http://supervisord.org/) diff --git a/doc/md/Reverse-proxy-configuration.md b/doc/md/Reverse-proxy-configuration.md deleted file mode 100644 index 91ffecff..00000000 --- a/doc/md/Reverse-proxy-configuration.md +++ /dev/null @@ -1,6 +0,0 @@ - -TODO, see https://github.com/shaarli/Shaarli/issues/888 - -## HAProxy - -## Nginx diff --git a/doc/md/Shaarli-images.md b/doc/md/Shaarli-images.md deleted file mode 100644 index 25f6cfdd..00000000 --- a/doc/md/Shaarli-images.md +++ /dev/null @@ -1,72 +0,0 @@ -## Get and run a Shaarli image - -### DockerHub repository -The images can be found in the [`shaarli/shaarli`](https://hub.docker.com/r/shaarli/shaarli/) -repository. - -### Available image tags -- `latest`: master branch (tarball release) -- `stable`: stable branch (tarball release) -- `dev`: master branch (Git clone) - -All images rely on: -- [Debian 8 Jessie](https://hub.docker.com/_/debian/) -- [PHP5-FPM](http://php-fpm.org/) -- [Nginx](http://nginx.org/) - -### Download from DockerHub -```bash -$ docker pull shaarli/shaarli -latest: Pulling from shaarli/shaarli -32716d9fcddb: Pull complete -84899d045435: Pull complete -4b6ad7444763: Pull complete -e0345ef7a3e0: Pull complete -5c1dd344094f: Pull complete -6422305a200b: Pull complete -7d63f861dbef: Pull complete -3eb97210645c: Pull complete -869319d746ff: Already exists -869319d746ff: Pulling fs layer -902b87aaaec9: Already exists -Digest: sha256:f836b4627b958b3f83f59c332f22f02fcd495ace3056f2be2c4912bd8704cc98 -Status: Downloaded newer image for shaarli/shaarli:latest -``` - -### Create and start a new container from the image -```bash -# map the host's :8000 port to the container's :80 port -$ docker create -p 8000:80 shaarli/shaarli -d40b7af693d678958adedfb88f87d6ea0237186c23de5c4102a55a8fcb499101 - -# launch the container in the background -$ docker start d40b7af693d678958adedfb88f87d6ea0237186c23de5c4102a55a8fcb499101 -d40b7af693d678958adedfb88f87d6ea0237186c23de5c4102a55a8fcb499101 - -# list active containers -$ docker ps -CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES -d40b7af693d6 shaarli/shaarli /usr/bin/supervisor 15 seconds ago Up 4 seconds 0.0.0.0:8000->80/tcp backstabbing_galileo -``` - -### Stop and destroy a container -```bash -$ docker stop backstabbing_galileo # those docker guys are really rude to physicists! -backstabbing_galileo - -# check the container is stopped -$ docker ps -CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES - -# list ALL containers -$ docker ps -a -CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES -d40b7af693d6 shaarli/shaarli /usr/bin/supervisor 5 minutes ago Exited (0) 48 seconds ago backstabbing_galileo - -# destroy the container -$ docker rm backstabbing_galileo # let's put an end to these barbarian practices -backstabbing_galileo - -$ docker ps -a -CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES -``` diff --git a/doc/md/docker/docker-101.md b/doc/md/docker/docker-101.md new file mode 100644 index 00000000..b02dd149 --- /dev/null +++ b/doc/md/docker/docker-101.md @@ -0,0 +1,62 @@ +## Basics +Install [Docker](https://www.docker.com/), by following the instructions relevant +to your OS / distribution, and start the service. + +### Search an image on [DockerHub](https://hub.docker.com/) + +```bash +$ docker search debian + +NAME DESCRIPTION STARS OFFICIAL AUTOMATED +ubuntu Ubuntu is a Debian-based Linux operating s... 2065 [OK] +debian Debian is a Linux distribution that's comp... 603 [OK] +google/debian 47 [OK] +``` + +### Show available tags for a repository +```bash +$ curl https://index.docker.io/v1/repositories/debian/tags | python -m json.tool + +% Total % Received % Xferd Average Speed Time Time Time Current +Dload Upload Total Spent Left Speed +100 1283 0 1283 0 0 433 0 --:--:-- 0:00:02 --:--:-- 433 +``` + +Sample output: +```json +[ + { + "layer": "85a02782", + "name": "stretch" + }, + { + "layer": "59abecbc", + "name": "testing" + }, + { + "layer": "bf0fd686", + "name": "unstable" + }, + { + "layer": "60c52dbe", + "name": "wheezy" + }, + { + "layer": "c5b806fe", + "name": "wheezy-backports" + } +] + +``` + +### Pull an image from DockerHub +```bash +$ docker pull repository[:tag] + +$ docker pull debian:wheezy +wheezy: Pulling from debian +4c8cbfd2973e: Pull complete +60c52dbe9d91: Pull complete +Digest: sha256:c584131da2ac1948aa3e66468a4424b6aea2f33acba7cec0b631bdb56254c4fe +Status: Downloaded newer image for debian:wheezy +``` diff --git a/doc/md/docker/resources.md b/doc/md/docker/resources.md new file mode 100644 index 00000000..082d4a46 --- /dev/null +++ b/doc/md/docker/resources.md @@ -0,0 +1,19 @@ +### Docker + +- [Interactive Docker training portal](https://www.katacoda.com/courses/docker/) on [Katakoda](https://www.katacoda.com/) +- [Where are Docker images stored?](http://blog.thoward37.me/articles/where-are-docker-images-stored/) +- [Dockerfile reference](https://docs.docker.com/reference/builder/) +- [Dockerfile best practices](https://docs.docker.com/articles/dockerfile_best-practices/) +- [Volumes](https://docs.docker.com/userguide/dockervolumes/) + +### DockerHub + +- [Repositories](https://docs.docker.com/userguide/dockerrepos/) +- [Teams and organizations](https://docs.docker.com/docker-hub/orgs/) +- [GitHub automated build](https://docs.docker.com/docker-hub/github/) + +### Service management + +- [Using supervisord](https://docs.docker.com/articles/using_supervisord/) +- [Nginx in the foreground](http://nginx.org/en/docs/ngx_core_module.html#daemon) +- [supervisord](http://supervisord.org/) diff --git a/doc/md/docker/reverse-proxy-configuration.md b/doc/md/docker/reverse-proxy-configuration.md new file mode 100644 index 00000000..91ffecff --- /dev/null +++ b/doc/md/docker/reverse-proxy-configuration.md @@ -0,0 +1,6 @@ + +TODO, see https://github.com/shaarli/Shaarli/issues/888 + +## HAProxy + +## Nginx diff --git a/doc/md/docker/shaarli-images.md b/doc/md/docker/shaarli-images.md new file mode 100644 index 00000000..6d108d21 --- /dev/null +++ b/doc/md/docker/shaarli-images.md @@ -0,0 +1,71 @@ +## Get and run a Shaarli image + +### DockerHub repository +The images can be found in the [`shaarli/shaarli`](https://hub.docker.com/r/shaarli/shaarli/) +repository. + +### Available image tags +- `latest`: master branch (tarball release) +- `stable`: stable branch (tarball release) + +All images rely on: +- [Debian 8 Jessie](https://hub.docker.com/_/debian/) +- [PHP5-FPM](http://php-fpm.org/) +- [Nginx](http://nginx.org/) + +### Download from DockerHub +```bash +$ docker pull shaarli/shaarli +latest: Pulling from shaarli/shaarli +32716d9fcddb: Pull complete +84899d045435: Pull complete +4b6ad7444763: Pull complete +e0345ef7a3e0: Pull complete +5c1dd344094f: Pull complete +6422305a200b: Pull complete +7d63f861dbef: Pull complete +3eb97210645c: Pull complete +869319d746ff: Already exists +869319d746ff: Pulling fs layer +902b87aaaec9: Already exists +Digest: sha256:f836b4627b958b3f83f59c332f22f02fcd495ace3056f2be2c4912bd8704cc98 +Status: Downloaded newer image for shaarli/shaarli:latest +``` + +### Create and start a new container from the image +```bash +# map the host's :8000 port to the container's :80 port +$ docker create -p 8000:80 shaarli/shaarli +d40b7af693d678958adedfb88f87d6ea0237186c23de5c4102a55a8fcb499101 + +# launch the container in the background +$ docker start d40b7af693d678958adedfb88f87d6ea0237186c23de5c4102a55a8fcb499101 +d40b7af693d678958adedfb88f87d6ea0237186c23de5c4102a55a8fcb499101 + +# list active containers +$ docker ps +CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES +d40b7af693d6 shaarli/shaarli /usr/bin/supervisor 15 seconds ago Up 4 seconds 0.0.0.0:8000->80/tcp backstabbing_galileo +``` + +### Stop and destroy a container +```bash +$ docker stop backstabbing_galileo # those docker guys are really rude to physicists! +backstabbing_galileo + +# check the container is stopped +$ docker ps +CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES + +# list ALL containers +$ docker ps -a +CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES +d40b7af693d6 shaarli/shaarli /usr/bin/supervisor 5 minutes ago Exited (0) 48 seconds ago backstabbing_galileo + +# destroy the container +$ docker rm backstabbing_galileo # let's put an end to these barbarian practices +backstabbing_galileo + +$ docker ps -a +CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES +``` -- cgit v1.2.3 From 3a6f91a9ccbdd8f2ed8e33c88c7800f2623cfd3a Mon Sep 17 00:00:00 2001 From: VirtualTam Date: Sat, 29 Jul 2017 15:29:54 +0200 Subject: Generate HTML documentation Signed-off-by: VirtualTam --- doc/html/3rd-party-libraries/index.html | 8 +- .../Backup,-restore,-import-and-export/index.html | 8 +- doc/html/Bookmarklet/index.html | 8 +- doc/html/Browsing-and-searching/index.html | 8 +- doc/html/Coding-guidelines/index.html | 8 +- doc/html/Community-&-Related-software/index.html | 8 +- doc/html/Continuous-integration-tools/index.html | 8 +- doc/html/Development-guidelines/index.html | 8 +- doc/html/Directory-structure/index.html | 8 +- doc/html/Docker-101/index.html | 398 -------------------- doc/html/Docker-resources/index.html | 358 ------------------ doc/html/Download-and-Installation/index.html | 8 +- doc/html/FAQ/index.html | 8 +- doc/html/Features/index.html | 12 +- doc/html/Firefox-share/index.html | 8 +- doc/html/GnuPG-signature/index.html | 8 +- doc/html/Plugin-System/index.html | 8 +- doc/html/Plugins/index.html | 12 +- doc/html/REST-API/index.html | 8 +- doc/html/RSS-feeds/index.html | 8 +- doc/html/Release-Shaarli/index.html | 8 +- doc/html/Reverse-proxy-configuration/index.html | 338 ----------------- doc/html/Security/index.html | 8 +- doc/html/Server-configuration/index.html | 8 +- doc/html/Server-requirements/index.html | 8 +- doc/html/Server-security/index.html | 8 +- doc/html/Shaarli-configuration/index.html | 60 +-- doc/html/Shaarli-images/index.html | 413 --------------------- doc/html/Static-analysis/index.html | 8 +- doc/html/Theming/index.html | 8 +- doc/html/Troubleshooting/index.html | 8 +- doc/html/Unit-tests/index.html | 8 +- doc/html/Upgrade-and-migration/index.html | 8 +- doc/html/Various-hacks/index.html | 8 +- doc/html/Versioning-and-Branches/index.html | 8 +- doc/html/docker/docker-101/index.html | 398 ++++++++++++++++++++ doc/html/docker/resources/index.html | 358 ++++++++++++++++++ .../docker/reverse-proxy-configuration/index.html | 338 +++++++++++++++++ doc/html/docker/shaarli-images/index.html | 412 ++++++++++++++++++++ doc/html/index.html | 10 +- doc/html/mkdocs/search_index.json | 46 +-- doc/html/search.html | 8 +- doc/html/sitemap.xml | 80 ++-- 43 files changed, 1738 insertions(+), 1727 deletions(-) delete mode 100644 doc/html/Docker-101/index.html delete mode 100644 doc/html/Docker-resources/index.html delete mode 100644 doc/html/Reverse-proxy-configuration/index.html delete mode 100644 doc/html/Shaarli-images/index.html create mode 100644 doc/html/docker/docker-101/index.html create mode 100644 doc/html/docker/resources/index.html create mode 100644 doc/html/docker/reverse-proxy-configuration/index.html create mode 100644 doc/html/docker/shaarli-images/index.html (limited to 'doc') diff --git a/doc/html/3rd-party-libraries/index.html b/doc/html/3rd-party-libraries/index.html index 0d62007d..d7754471 100644 --- a/doc/html/3rd-party-libraries/index.html +++ b/doc/html/3rd-party-libraries/index.html @@ -94,19 +94,19 @@ diff --git a/doc/html/Backup,-restore,-import-and-export/index.html b/doc/html/Backup,-restore,-import-and-export/index.html index 33ec9124..caebb6ce 100644 --- a/doc/html/Backup,-restore,-import-and-export/index.html +++ b/doc/html/Backup,-restore,-import-and-export/index.html @@ -94,19 +94,19 @@ diff --git a/doc/html/Bookmarklet/index.html b/doc/html/Bookmarklet/index.html index 325d305a..924a8710 100644 --- a/doc/html/Bookmarklet/index.html +++ b/doc/html/Bookmarklet/index.html @@ -94,19 +94,19 @@ diff --git a/doc/html/Browsing-and-searching/index.html b/doc/html/Browsing-and-searching/index.html index c8b7386e..f2454103 100644 --- a/doc/html/Browsing-and-searching/index.html +++ b/doc/html/Browsing-and-searching/index.html @@ -94,19 +94,19 @@ diff --git a/doc/html/Coding-guidelines/index.html b/doc/html/Coding-guidelines/index.html index dfcdd45c..3e27309b 100644 --- a/doc/html/Coding-guidelines/index.html +++ b/doc/html/Coding-guidelines/index.html @@ -94,19 +94,19 @@ diff --git a/doc/html/Community-&-Related-software/index.html b/doc/html/Community-&-Related-software/index.html index 2497433c..e9c3313f 100644 --- a/doc/html/Community-&-Related-software/index.html +++ b/doc/html/Community-&-Related-software/index.html @@ -94,19 +94,19 @@ diff --git a/doc/html/Continuous-integration-tools/index.html b/doc/html/Continuous-integration-tools/index.html index 339f37ac..b0599227 100644 --- a/doc/html/Continuous-integration-tools/index.html +++ b/doc/html/Continuous-integration-tools/index.html @@ -94,19 +94,19 @@ diff --git a/doc/html/Development-guidelines/index.html b/doc/html/Development-guidelines/index.html index e75c911b..9e1d8ab6 100644 --- a/doc/html/Development-guidelines/index.html +++ b/doc/html/Development-guidelines/index.html @@ -94,19 +94,19 @@ diff --git a/doc/html/Directory-structure/index.html b/doc/html/Directory-structure/index.html index ff075ec5..49f26ddb 100644 --- a/doc/html/Directory-structure/index.html +++ b/doc/html/Directory-structure/index.html @@ -94,19 +94,19 @@ diff --git a/doc/html/Docker-101/index.html b/doc/html/Docker-101/index.html deleted file mode 100644 index 31e57b59..00000000 --- a/doc/html/Docker-101/index.html +++ /dev/null @@ -1,398 +0,0 @@ - - - - - - - - - - - Docker 101 - Shaarli Documentation - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - -
-
-
- -
-
-
-
- -

Basics

-

Install Docker, by following the instructions relevant -to your OS / distribution, and start the service.

-

Search an image on DockerHub

-
$ docker search debian
-
-NAME            DESCRIPTION                                     STARS   OFFICIAL   AUTOMATED
-ubuntu          Ubuntu is a Debian-based Linux operating s...   2065    [OK]
-debian          Debian is a Linux distribution that's comp...   603     [OK]
-google/debian                                                   47                 [OK]
-
- -

Show available tags for a repository

-
$ curl https://index.docker.io/v1/repositories/debian/tags | python -m json.tool
-
-% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
-Dload  Upload   Total   Spent    Left  Speed
-100  1283    0  1283    0     0    433      0 --:--:--  0:00:02 --:--:--   433
-
- -

Sample output:

-
[
-    {
-        "layer": "85a02782",
-        "name": "stretch"
-    },
-    {
-        "layer": "59abecbc",
-        "name": "testing"
-    },
-    {
-        "layer": "bf0fd686",
-        "name": "unstable"
-    },
-    {
-        "layer": "60c52dbe",
-        "name": "wheezy"
-    },
-    {
-        "layer": "c5b806fe",
-        "name": "wheezy-backports"
-    }
-]
-
-
- -

Pull an image from DockerHub

-
$ docker pull repository[:tag]
-
-$ docker pull debian:wheezy
-wheezy: Pulling from debian
-4c8cbfd2973e: Pull complete
-60c52dbe9d91: Pull complete
-Digest: sha256:c584131da2ac1948aa3e66468a4424b6aea2f33acba7cec0b631bdb56254c4fe
-Status: Downloaded newer image for debian:wheezy
-
- -
-
- - -
-
- -
- -
- -
- - - GitHub - - - « Previous - - - Next » - - -
- - - - diff --git a/doc/html/Docker-resources/index.html b/doc/html/Docker-resources/index.html deleted file mode 100644 index 169a0297..00000000 --- a/doc/html/Docker-resources/index.html +++ /dev/null @@ -1,358 +0,0 @@ - - - - - - - - - - - Docker resources - Shaarli Documentation - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - -
-
-
- -
-
- - - -
-
- -
- -
- -
- - - GitHub - - - « Previous - - - Next » - - -
- - - - diff --git a/doc/html/Download-and-Installation/index.html b/doc/html/Download-and-Installation/index.html index 92342681..8bc9a5b9 100644 --- a/doc/html/Download-and-Installation/index.html +++ b/doc/html/Download-and-Installation/index.html @@ -128,19 +128,19 @@ diff --git a/doc/html/FAQ/index.html b/doc/html/FAQ/index.html index f8ced260..5b7900bc 100644 --- a/doc/html/FAQ/index.html +++ b/doc/html/FAQ/index.html @@ -94,19 +94,19 @@ diff --git a/doc/html/Features/index.html b/doc/html/Features/index.html index e847c546..79030799 100644 --- a/doc/html/Features/index.html +++ b/doc/html/Features/index.html @@ -94,19 +94,19 @@ @@ -318,7 +318,7 @@ Next - Previous + Previous @@ -346,7 +346,7 @@ GitHub - « Previous + « Previous Next » diff --git a/doc/html/Firefox-share/index.html b/doc/html/Firefox-share/index.html index 9c028ffc..4c84a07c 100644 --- a/doc/html/Firefox-share/index.html +++ b/doc/html/Firefox-share/index.html @@ -94,19 +94,19 @@ diff --git a/doc/html/GnuPG-signature/index.html b/doc/html/GnuPG-signature/index.html index 0b2d842a..82e22070 100644 --- a/doc/html/GnuPG-signature/index.html +++ b/doc/html/GnuPG-signature/index.html @@ -94,19 +94,19 @@ diff --git a/doc/html/Plugin-System/index.html b/doc/html/Plugin-System/index.html index dbed5908..11ea5ed5 100644 --- a/doc/html/Plugin-System/index.html +++ b/doc/html/Plugin-System/index.html @@ -94,19 +94,19 @@ diff --git a/doc/html/Plugins/index.html b/doc/html/Plugins/index.html index 4b63681e..f87cf84c 100644 --- a/doc/html/Plugins/index.html +++ b/doc/html/Plugins/index.html @@ -115,19 +115,19 @@ @@ -358,7 +358,7 @@ Example:

diff --git a/doc/html/REST-API/index.html b/doc/html/REST-API/index.html index 6e2c9518..dae27e5c 100644 --- a/doc/html/REST-API/index.html +++ b/doc/html/REST-API/index.html @@ -94,19 +94,19 @@ diff --git a/doc/html/RSS-feeds/index.html b/doc/html/RSS-feeds/index.html index a4b7339f..1e4ea957 100644 --- a/doc/html/RSS-feeds/index.html +++ b/doc/html/RSS-feeds/index.html @@ -94,19 +94,19 @@ diff --git a/doc/html/Release-Shaarli/index.html b/doc/html/Release-Shaarli/index.html index 5857a52f..fbb06725 100644 --- a/doc/html/Release-Shaarli/index.html +++ b/doc/html/Release-Shaarli/index.html @@ -94,19 +94,19 @@ diff --git a/doc/html/Reverse-proxy-configuration/index.html b/doc/html/Reverse-proxy-configuration/index.html deleted file mode 100644 index f573c5cd..00000000 --- a/doc/html/Reverse-proxy-configuration/index.html +++ /dev/null @@ -1,338 +0,0 @@ - - - - - - - - - - - Reverse proxy configuration - Shaarli Documentation - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - -
-
-
- -
-
-
-
- -

TODO, see https://github.com/shaarli/Shaarli/issues/888

-

HAProxy

-

Nginx

- -
-
- - -
-
- -
- -
- -
- - - GitHub - - - « Previous - - - Next » - - -
- - - - diff --git a/doc/html/Security/index.html b/doc/html/Security/index.html index c7aec584..bea1ba90 100644 --- a/doc/html/Security/index.html +++ b/doc/html/Security/index.html @@ -94,19 +94,19 @@ diff --git a/doc/html/Server-configuration/index.html b/doc/html/Server-configuration/index.html index 6e798b4b..91b20fda 100644 --- a/doc/html/Server-configuration/index.html +++ b/doc/html/Server-configuration/index.html @@ -149,19 +149,19 @@ diff --git a/doc/html/Server-requirements/index.html b/doc/html/Server-requirements/index.html index f3bfa185..29bb610b 100644 --- a/doc/html/Server-requirements/index.html +++ b/doc/html/Server-requirements/index.html @@ -112,19 +112,19 @@ diff --git a/doc/html/Server-security/index.html b/doc/html/Server-security/index.html index 6d9f25c0..5ec0fdb6 100644 --- a/doc/html/Server-security/index.html +++ b/doc/html/Server-security/index.html @@ -118,19 +118,19 @@ diff --git a/doc/html/Shaarli-configuration/index.html b/doc/html/Shaarli-configuration/index.html index 4e556061..cd323a32 100644 --- a/doc/html/Shaarli-configuration/index.html +++ b/doc/html/Shaarli-configuration/index.html @@ -134,19 +134,19 @@ @@ -323,26 +323,38 @@ its values override those defined in index.php it is wrap in a PHP comment to prevent anyone accessing it, regardless of server configuration

File and directory permissions

-

The server process running Shaarli must have: -- read access to the following resources: - - PHP scripts: index.php, application/*.php, plugins/*.php - - 3rd party PHP and Javascript libraries: inc/*.php, inc/*.js - - static assets: - - CSS stylesheets: inc/*.css - - images/* - - RainTPL templates: tpl/*.html -- read, write and execution access to the following directories: - - cache - thumbnail cache - - data - link data store, configuration options - - pagecache - Atom/RSS feed cache - - tmp - RainTPL page cache

-

On a Linux distribution: -- the web server user will likely be www or http (for Apache2) -- it will be a member of a group of the same name: www:www, http:http -- to give it access to Shaarli, either: - - unzip Shaarli in the default web server location (usually /var/www/) and set the web server user as the owner - - put users in the same group as the web server, and set the appropriate access rights -- if you have a domain / subdomain to serve Shaarli, configure the server accordingly

+

The server process running Shaarli must have:

+
    +
  • read access to the following resources:
      +
    • PHP scripts: index.php, application/*.php, plugins/*.php
    • +
    • 3rd party PHP and Javascript libraries: inc/*.php, inc/*.js
    • +
    • static assets:
        +
      • CSS stylesheets: inc/*.css
      • +
      • images/*
      • +
      +
    • +
    • RainTPL templates: tpl/*.html
    • +
    +
  • +
  • read, write and execution access to the following directories:
      +
    • cache - thumbnail cache
    • +
    • data - link data store, configuration options
    • +
    • pagecache - Atom/RSS feed cache
    • +
    • tmp - RainTPL page cache
    • +
    +
  • +
+

On a Linux distribution:

+
    +
  • the web server user will likely be www or http (for Apache2)
  • +
  • it will be a member of a group of the same name: www:www, http:http
  • +
  • to give it access to Shaarli, either:
      +
    • unzip Shaarli in the default web server location (usually /var/www/) and set the web server user as the owner
    • +
    • put users in the same group as the web server, and set the appropriate access rights
    • +
    +
  • +
  • if you have a domain / subdomain to serve Shaarli, configure the server accordingly
  • +

Configuration

In data/config.json.php.

See also Plugin System.

diff --git a/doc/html/Shaarli-images/index.html b/doc/html/Shaarli-images/index.html deleted file mode 100644 index 4a1cf66b..00000000 --- a/doc/html/Shaarli-images/index.html +++ /dev/null @@ -1,413 +0,0 @@ - - - - - - - - - - - Shaarli images - Shaarli Documentation - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - -
-
-
- -
-
-
-
- -

Get and run a Shaarli image

-

DockerHub repository

-

The images can be found in the shaarli/shaarli -repository.

-

Available image tags

-
    -
  • latest: master branch (tarball release)
  • -
  • stable: stable branch (tarball release)
  • -
  • dev: master branch (Git clone)
  • -
-

All images rely on: -- Debian 8 Jessie -- PHP5-FPM -- Nginx

-

Download from DockerHub

-
$ docker pull shaarli/shaarli
-latest: Pulling from shaarli/shaarli
-32716d9fcddb: Pull complete
-84899d045435: Pull complete
-4b6ad7444763: Pull complete
-e0345ef7a3e0: Pull complete
-5c1dd344094f: Pull complete
-6422305a200b: Pull complete
-7d63f861dbef: Pull complete
-3eb97210645c: Pull complete
-869319d746ff: Already exists
-869319d746ff: Pulling fs layer
-902b87aaaec9: Already exists
-Digest: sha256:f836b4627b958b3f83f59c332f22f02fcd495ace3056f2be2c4912bd8704cc98
-Status: Downloaded newer image for shaarli/shaarli:latest
-
- -

Create and start a new container from the image

-
# map the host's :8000 port to the container's :80 port
-$ docker create -p 8000:80 shaarli/shaarli
-d40b7af693d678958adedfb88f87d6ea0237186c23de5c4102a55a8fcb499101
-
-# launch the container in the background
-$ docker start d40b7af693d678958adedfb88f87d6ea0237186c23de5c4102a55a8fcb499101
-d40b7af693d678958adedfb88f87d6ea0237186c23de5c4102a55a8fcb499101
-
-# list active containers
-$ docker ps
-CONTAINER ID  IMAGE            COMMAND               CREATED         STATUS        PORTS                 NAMES
-d40b7af693d6  shaarli/shaarli  /usr/bin/supervisor  15 seconds ago  Up 4 seconds  0.0.0.0:8000->80/tcp  backstabbing_galileo
-
- -

Stop and destroy a container

-
$ docker stop backstabbing_galileo  # those docker guys are really rude to physicists!
-backstabbing_galileo
-
-# check the container is stopped
-$ docker ps
-CONTAINER ID  IMAGE            COMMAND               CREATED         STATUS        PORTS                 NAMES
-
-# list ALL containers
-$ docker ps -a
-CONTAINER ID        IMAGE               COMMAND                CREATED             STATUS                      PORTS               NAMES
-d40b7af693d6        shaarli/shaarli     /usr/bin/supervisor   5 minutes ago       Exited (0) 48 seconds ago                       backstabbing_galileo
-
-# destroy the container
-$ docker rm backstabbing_galileo  # let's put an end to these barbarian practices
-backstabbing_galileo
-
-$ docker ps -a
-CONTAINER ID  IMAGE            COMMAND               CREATED         STATUS        PORTS                 NAMES
-
- -
-
- - -
-
- -
- -
- -
- - - GitHub - - - « Previous - - - Next » - - -
- - - - diff --git a/doc/html/Static-analysis/index.html b/doc/html/Static-analysis/index.html index ddd81f86..e0aff52f 100644 --- a/doc/html/Static-analysis/index.html +++ b/doc/html/Static-analysis/index.html @@ -94,19 +94,19 @@ diff --git a/doc/html/Theming/index.html b/doc/html/Theming/index.html index 670dbb80..d6ecb06d 100644 --- a/doc/html/Theming/index.html +++ b/doc/html/Theming/index.html @@ -94,19 +94,19 @@ diff --git a/doc/html/Troubleshooting/index.html b/doc/html/Troubleshooting/index.html index f1564362..90705ada 100644 --- a/doc/html/Troubleshooting/index.html +++ b/doc/html/Troubleshooting/index.html @@ -94,19 +94,19 @@ diff --git a/doc/html/Unit-tests/index.html b/doc/html/Unit-tests/index.html index ce90ed10..ebc92beb 100644 --- a/doc/html/Unit-tests/index.html +++ b/doc/html/Unit-tests/index.html @@ -94,19 +94,19 @@ diff --git a/doc/html/Upgrade-and-migration/index.html b/doc/html/Upgrade-and-migration/index.html index 3319fa72..b190ed38 100644 --- a/doc/html/Upgrade-and-migration/index.html +++ b/doc/html/Upgrade-and-migration/index.html @@ -133,19 +133,19 @@ diff --git a/doc/html/Various-hacks/index.html b/doc/html/Various-hacks/index.html index b06207ae..a10358c0 100644 --- a/doc/html/Various-hacks/index.html +++ b/doc/html/Various-hacks/index.html @@ -94,19 +94,19 @@ diff --git a/doc/html/Versioning-and-Branches/index.html b/doc/html/Versioning-and-Branches/index.html index 97bdb47e..d3f61ec3 100644 --- a/doc/html/Versioning-and-Branches/index.html +++ b/doc/html/Versioning-and-Branches/index.html @@ -94,19 +94,19 @@ diff --git a/doc/html/docker/docker-101/index.html b/doc/html/docker/docker-101/index.html new file mode 100644 index 00000000..67a3f8e4 --- /dev/null +++ b/doc/html/docker/docker-101/index.html @@ -0,0 +1,398 @@ + + + + + + + + + + + Docker 101 - Shaarli Documentation + + + + + + + + + + + + + + + + + +
+ + + + +
+ + + + + +
+
+
+ +
+
+
+
+ +

Basics

+

Install Docker, by following the instructions relevant +to your OS / distribution, and start the service.

+

Search an image on DockerHub

+
$ docker search debian
+
+NAME            DESCRIPTION                                     STARS   OFFICIAL   AUTOMATED
+ubuntu          Ubuntu is a Debian-based Linux operating s...   2065    [OK]
+debian          Debian is a Linux distribution that's comp...   603     [OK]
+google/debian                                                   47                 [OK]
+
+ +

Show available tags for a repository

+
$ curl https://index.docker.io/v1/repositories/debian/tags | python -m json.tool
+
+% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
+Dload  Upload   Total   Spent    Left  Speed
+100  1283    0  1283    0     0    433      0 --:--:--  0:00:02 --:--:--   433
+
+ +

Sample output:

+
[
+    {
+        "layer": "85a02782",
+        "name": "stretch"
+    },
+    {
+        "layer": "59abecbc",
+        "name": "testing"
+    },
+    {
+        "layer": "bf0fd686",
+        "name": "unstable"
+    },
+    {
+        "layer": "60c52dbe",
+        "name": "wheezy"
+    },
+    {
+        "layer": "c5b806fe",
+        "name": "wheezy-backports"
+    }
+]
+
+
+ +

Pull an image from DockerHub

+
$ docker pull repository[:tag]
+
+$ docker pull debian:wheezy
+wheezy: Pulling from debian
+4c8cbfd2973e: Pull complete
+60c52dbe9d91: Pull complete
+Digest: sha256:c584131da2ac1948aa3e66468a4424b6aea2f33acba7cec0b631bdb56254c4fe
+Status: Downloaded newer image for debian:wheezy
+
+ +
+
+ + +
+
+ +
+ +
+ +
+ + + GitHub + + + « Previous + + + Next » + + +
+ + + + diff --git a/doc/html/docker/resources/index.html b/doc/html/docker/resources/index.html new file mode 100644 index 00000000..409c4e51 --- /dev/null +++ b/doc/html/docker/resources/index.html @@ -0,0 +1,358 @@ + + + + + + + + + + + Docker resources - Shaarli Documentation + + + + + + + + + + + + + + + + + +
+ + + + +
+ + + + + +
+
+
+ +
+
+ + + +
+
+ +
+ +
+ +
+ + + GitHub + + + « Previous + + + Next » + + +
+ + + + diff --git a/doc/html/docker/reverse-proxy-configuration/index.html b/doc/html/docker/reverse-proxy-configuration/index.html new file mode 100644 index 00000000..fd1187c9 --- /dev/null +++ b/doc/html/docker/reverse-proxy-configuration/index.html @@ -0,0 +1,338 @@ + + + + + + + + + + + Reverse proxy configuration - Shaarli Documentation + + + + + + + + + + + + + + + + + +
+ + + + +
+ + + + + +
+
+
+ +
+
+
+
+ +

TODO, see https://github.com/shaarli/Shaarli/issues/888

+

HAProxy

+

Nginx

+ +
+
+ + +
+
+ +
+ +
+ +
+ + + GitHub + + + « Previous + + + Next » + + +
+ + + + diff --git a/doc/html/docker/shaarli-images/index.html b/doc/html/docker/shaarli-images/index.html new file mode 100644 index 00000000..6938b65f --- /dev/null +++ b/doc/html/docker/shaarli-images/index.html @@ -0,0 +1,412 @@ + + + + + + + + + + + Shaarli images - Shaarli Documentation + + + + + + + + + + + + + + + + + +
+ + + + +
+ + + + + +
+
+
+ +
+
+
+
+ +

Get and run a Shaarli image

+

DockerHub repository

+

The images can be found in the shaarli/shaarli +repository.

+

Available image tags

+
    +
  • latest: master branch (tarball release)
  • +
  • stable: stable branch (tarball release)
  • +
+

All images rely on: +- Debian 8 Jessie +- PHP5-FPM +- Nginx

+

Download from DockerHub

+
$ docker pull shaarli/shaarli
+latest: Pulling from shaarli/shaarli
+32716d9fcddb: Pull complete
+84899d045435: Pull complete
+4b6ad7444763: Pull complete
+e0345ef7a3e0: Pull complete
+5c1dd344094f: Pull complete
+6422305a200b: Pull complete
+7d63f861dbef: Pull complete
+3eb97210645c: Pull complete
+869319d746ff: Already exists
+869319d746ff: Pulling fs layer
+902b87aaaec9: Already exists
+Digest: sha256:f836b4627b958b3f83f59c332f22f02fcd495ace3056f2be2c4912bd8704cc98
+Status: Downloaded newer image for shaarli/shaarli:latest
+
+ +

Create and start a new container from the image

+
# map the host's :8000 port to the container's :80 port
+$ docker create -p 8000:80 shaarli/shaarli
+d40b7af693d678958adedfb88f87d6ea0237186c23de5c4102a55a8fcb499101
+
+# launch the container in the background
+$ docker start d40b7af693d678958adedfb88f87d6ea0237186c23de5c4102a55a8fcb499101
+d40b7af693d678958adedfb88f87d6ea0237186c23de5c4102a55a8fcb499101
+
+# list active containers
+$ docker ps
+CONTAINER ID  IMAGE            COMMAND               CREATED         STATUS        PORTS                 NAMES
+d40b7af693d6  shaarli/shaarli  /usr/bin/supervisor  15 seconds ago  Up 4 seconds  0.0.0.0:8000->80/tcp  backstabbing_galileo
+
+ +

Stop and destroy a container

+
$ docker stop backstabbing_galileo  # those docker guys are really rude to physicists!
+backstabbing_galileo
+
+# check the container is stopped
+$ docker ps
+CONTAINER ID  IMAGE            COMMAND               CREATED         STATUS        PORTS                 NAMES
+
+# list ALL containers
+$ docker ps -a
+CONTAINER ID        IMAGE               COMMAND                CREATED             STATUS                      PORTS               NAMES
+d40b7af693d6        shaarli/shaarli     /usr/bin/supervisor   5 minutes ago       Exited (0) 48 seconds ago                       backstabbing_galileo
+
+# destroy the container
+$ docker rm backstabbing_galileo  # let's put an end to these barbarian practices
+backstabbing_galileo
+
+$ docker ps -a
+CONTAINER ID  IMAGE            COMMAND               CREATED         STATUS        PORTS                 NAMES
+
+ +
+
+ + +
+
+ +
+ +
+ +
+ + + GitHub + + + « Previous + + + Next » + + +
+ + + + diff --git a/doc/html/index.html b/doc/html/index.html index 93f4ba5d..907538cd 100644 --- a/doc/html/index.html +++ b/doc/html/index.html @@ -110,19 +110,19 @@ @@ -441,5 +441,5 @@ and pull requests diff --git a/doc/html/mkdocs/search_index.json b/doc/html/mkdocs/search_index.json index 71bc2bcf..d9e8b5b8 100644 --- a/doc/html/mkdocs/search_index.json +++ b/doc/html/mkdocs/search_index.json @@ -382,7 +382,7 @@ }, { "location": "/Shaarli-configuration/", - "text": "Foreword\n\n\nDo not edit configuration options in index.php! Your changes would be lost.\n \n\n\nOnce your Shaarli instance is installed, the file \ndata/config.json.php\n is generated:\n\n it contains all settings in JSON format, and can be edited to customize values\n\n it defines which \nplugins\n are enabled\n\n\n its values override those defined in \nindex.php\n\n\n it is wrap in a PHP comment to prevent anyone accessing it, regardless of server configuration\n\n\nFile and directory permissions\n\n\nThe server process running Shaarli must have:\n- \nread\n access to the following resources:\n - PHP scripts: \nindex.php\n, \napplication/*.php\n, \nplugins/*.php\n\n - 3rd party PHP and Javascript libraries: \ninc/*.php\n, \ninc/*.js\n\n - static assets:\n - CSS stylesheets: \ninc/*.css\n\n - \nimages/*\n\n - RainTPL templates: \ntpl/*.html\n\n- \nread\n, \nwrite\n and \nexecution\n access to the following directories:\n - \ncache\n - thumbnail cache\n - \ndata\n - link data store, configuration options\n - \npagecache\n - Atom/RSS feed cache\n - \ntmp\n - RainTPL page cache\n\n\nOn a Linux distribution:\n- the web server user will likely be \nwww\n or \nhttp\n (for Apache2)\n- it will be a member of a group of the same name: \nwww:www\n, \nhttp:http\n\n- to give it access to Shaarli, either:\n - unzip Shaarli in the default web server location (usually \n/var/www/\n) and set the web server user as the owner\n - put users in the same group as the web server, and set the appropriate access rights\n- if you have a domain / subdomain to serve Shaarli, \nconfigure the server\n accordingly\n\n\nConfiguration\n\n\nIn \ndata/config.json.php\n.\n\n\nSee also \nPlugin System\n.\n\n\nCredentials\n\n\n\n\nYou shouldn't edit those.\n\n\n\n\nlogin\n: Login username.\n\n\nhash\n: Generated password hash.\n\n\nsalt\n: Password salt.\n\n\nGeneral\n\n\ntitle\n: Shaarli's instance title.\n\n\nheader_link\n: Link to the homepage.\n\n\nlinks_per_page\n: Number of shaares displayed per page.\n\n\ntimezone\n: See \nthe list of supported timezones\n.\n\n\nenabled_plugins\n: List of enabled plugins.\n\n\nSecurity\n\n\nsession_protection_disabled\n: Disable session cookie hijacking protection (not recommended). \nIt might be useful if your IP adress often changes.\n\n\nban_after\n: Failed login attempts before being IP banned.\n\n\nban_duration\n: IP ban duration in seconds.\n\n\nopen_shaarli\n: Anyone can add a new link while logged out if enabled.\n\n\ntrusted_proxies\n: List of trusted IP which won't be banned after failed login attemps. Useful if Shaarli is behind a reverse proxy.\n\n\nallowed_protocols\n: List of allowed protocols in shaare URLs or markdown-rendered descriptions. Useful if you want to store \njavascript:\n links (bookmarklets) in Shaarli (default: \n[\"ftp\", \"ftps\", \"magnet\"]\n).\n\n\nResources\n\n\ndata_dir\n: Data directory.\n\n\ndatastore\n: Shaarli's links database file path.\n\n\nhistory\n: Shaarli's operation history file path.\n\nupdates\n: File path for the ran updates file.\n\n\nlog\n: Log file path.\n\n\nupdate_check\n: Last update check file path.\n\n\nraintpl_tpl\n: Templates directory.\n\n\nraintpl_tmp\n: Template engine cache directory.\n\n\nthumbnails_cache\n: Thumbnails cache directory.\n\n\npage_cache\n: Shaarli's internal cache directory.\n\n\nban_file\n: Banned IP file path.\n\n\nUpdates\n\n\ncheck_updates\n: Enable or disable update check to the git repository.\n\n\ncheck_updates_branch\n: Git branch used to check updates (e.g. \nstable\n or \nmaster\n).\n\n\ncheck_updates_interval\n: Look for new version every N seconds (default: every day).\n\n\nPrivacy\n\n\ndefault_private_links\n: Check the private checkbox by default for every new link.\n\n\nhide_public_links\n: All links are hidden while logged out.\n\n\nhide_timestamps\n: Timestamps are hidden.\n\n\nFeed\n\n\nrss_permalinks\n: Enable this to redirect RSS links to Shaarli's permalinks instead of shaared URL.\n\n\nshow_atom\n: Display ATOM feed button.\n\n\nThumbnail\n\n\nenable_thumbnails\n: Enable or disable thumbnail display.\n\n\nenable_localcache\n: Enable or disable local cache.\n\n\nRedirector\n\n\nurl\n: Redirector URL, such as \nanonym.to\n.\n\n\nencode_url\n: Enable this if the redirector needs encoded URL to work properly.\n\n\nConfiguration file example\n\n\n\",\n \"hash\": \"\",\n \"salt\": \"\"\n },\n \"security\": {\n \"ban_after\": 4,\n \"session_protection_disabled\": false,\n \"ban_duration\": 1800,\n \"trusted_proxies\": [\n \"1.2.3.4\",\n \"5.6.7.8\"\n ],\n \"allowed_protocols\": [\n \"ftp\",\n \"ftps\",\n \"magnet\"\n ]\n },\n \"resources\": {\n \"data_dir\": \"data\",\n \"config\": \"data\\/config.php\",\n \"datastore\": \"data\\/datastore.php\",\n \"ban_file\": \"data\\/ipbans.php\",\n \"updates\": \"data\\/updates.txt\",\n \"log\": \"data\\/log.txt\",\n \"update_check\": \"data\\/lastupdatecheck.txt\",\n \"raintpl_tmp\": \"tmp\\/\",\n \"raintpl_tpl\": \"tpl\\/\",\n \"thumbnails_cache\": \"cache\",\n \"page_cache\": \"pagecache\"\n },\n \"general\": {\n \"check_updates\": true,\n \"rss_permalinks\": true,\n \"links_per_page\": 20,\n \"default_private_links\": true,\n \"enable_thumbnails\": true,\n \"enable_localcache\": true,\n \"check_updates_branch\": \"stable\",\n \"check_updates_interval\": 86400,\n \"enabled_plugins\": [\n \"markdown\",\n \"wallabag\",\n \"archiveorg\"\n ],\n \"timezone\": \"Europe\\/Paris\",\n \"title\": \"My Shaarli\",\n \"header_link\": \"?\"\n },\n \"extras\": {\n \"show_atom\": false,\n \"hide_public_links\": false,\n \"hide_timestamps\": false,\n \"open_shaarli\": false,\n \"redirector\": \"http://anonym.to/?\",\n \"redirector_encode_url\": false\n },\n \"general\": {\n \"header_link\": \"?\",\n \"links_per_page\": 20,\n \"enabled_plugins\": [\n \"markdown\",\n \"wallabag\"\n ],\n \"timezone\": \"Europe\\/Paris\",\n \"title\": \"My Shaarli\"\n },\n \"updates\": {\n \"check_updates\": true,\n \"check_updates_branch\": \"stable\",\n \"check_updates_interval\": 86400\n },\n \"feed\": {\n \"rss_permalinks\": true,\n \"show_atom\": false\n },\n \"privacy\": {\n \"default_private_links\": true,\n \"hide_public_links\": false,\n \"hide_timestamps\": false\n },\n \"thumbnail\": {\n \"enable_thumbnails\": true,\n \"enable_localcache\": true\n },\n \"redirector\": {\n \"url\": \"http://anonym.to/?\",\n \"encode_url\": false\n },\n \"plugins\": {\n \"WALLABAG_URL\": \"http://demo.wallabag.org\",\n \"WALLABAG_VERSION\": \"1\"\n }\n} ?>\n\n\n\n\nAdditional configuration\n\n\nThe playvideos plugin may require that you adapt your server's \n\nContent Security Policy\n \nconfiguration to work properly.", + "text": "Foreword\n\n\nDo not edit configuration options in index.php! Your changes would be lost.\n \n\n\nOnce your Shaarli instance is installed, the file \ndata/config.json.php\n is generated:\n\n it contains all settings in JSON format, and can be edited to customize values\n\n it defines which \nplugins\n are enabled\n\n\n its values override those defined in \nindex.php\n\n\n it is wrap in a PHP comment to prevent anyone accessing it, regardless of server configuration\n\n\nFile and directory permissions\n\n\nThe server process running Shaarli must have:\n\n\n\n\nread\n access to the following resources:\n\n\nPHP scripts: \nindex.php\n, \napplication/*.php\n, \nplugins/*.php\n\n\n3rd party PHP and Javascript libraries: \ninc/*.php\n, \ninc/*.js\n\n\nstatic assets:\n\n\nCSS stylesheets: \ninc/*.css\n\n\nimages/*\n\n\n\n\n\n\nRainTPL templates: \ntpl/*.html\n\n\n\n\n\n\nread\n, \nwrite\n and \nexecution\n access to the following directories:\n\n\ncache\n - thumbnail cache\n\n\ndata\n - link data store, configuration options\n\n\npagecache\n - Atom/RSS feed cache\n\n\ntmp\n - RainTPL page cache\n\n\n\n\n\n\n\n\nOn a Linux distribution:\n\n\n\n\nthe web server user will likely be \nwww\n or \nhttp\n (for Apache2)\n\n\nit will be a member of a group of the same name: \nwww:www\n, \nhttp:http\n\n\nto give it access to Shaarli, either:\n\n\nunzip Shaarli in the default web server location (usually \n/var/www/\n) and set the web server user as the owner\n\n\nput users in the same group as the web server, and set the appropriate access rights\n\n\n\n\n\n\nif you have a domain / subdomain to serve Shaarli, \nconfigure the server\n accordingly\n\n\n\n\nConfiguration\n\n\nIn \ndata/config.json.php\n.\n\n\nSee also \nPlugin System\n.\n\n\nCredentials\n\n\n\n\nYou shouldn't edit those.\n\n\n\n\nlogin\n: Login username.\n\n\nhash\n: Generated password hash.\n\n\nsalt\n: Password salt.\n\n\nGeneral\n\n\ntitle\n: Shaarli's instance title.\n\n\nheader_link\n: Link to the homepage.\n\n\nlinks_per_page\n: Number of shaares displayed per page.\n\n\ntimezone\n: See \nthe list of supported timezones\n.\n\n\nenabled_plugins\n: List of enabled plugins.\n\n\nSecurity\n\n\nsession_protection_disabled\n: Disable session cookie hijacking protection (not recommended). \nIt might be useful if your IP adress often changes.\n\n\nban_after\n: Failed login attempts before being IP banned.\n\n\nban_duration\n: IP ban duration in seconds.\n\n\nopen_shaarli\n: Anyone can add a new link while logged out if enabled.\n\n\ntrusted_proxies\n: List of trusted IP which won't be banned after failed login attemps. Useful if Shaarli is behind a reverse proxy.\n\n\nallowed_protocols\n: List of allowed protocols in shaare URLs or markdown-rendered descriptions. Useful if you want to store \njavascript:\n links (bookmarklets) in Shaarli (default: \n[\"ftp\", \"ftps\", \"magnet\"]\n).\n\n\nResources\n\n\ndata_dir\n: Data directory.\n\n\ndatastore\n: Shaarli's links database file path.\n\n\nhistory\n: Shaarli's operation history file path.\n\nupdates\n: File path for the ran updates file.\n\n\nlog\n: Log file path.\n\n\nupdate_check\n: Last update check file path.\n\n\nraintpl_tpl\n: Templates directory.\n\n\nraintpl_tmp\n: Template engine cache directory.\n\n\nthumbnails_cache\n: Thumbnails cache directory.\n\n\npage_cache\n: Shaarli's internal cache directory.\n\n\nban_file\n: Banned IP file path.\n\n\nUpdates\n\n\ncheck_updates\n: Enable or disable update check to the git repository.\n\n\ncheck_updates_branch\n: Git branch used to check updates (e.g. \nstable\n or \nmaster\n).\n\n\ncheck_updates_interval\n: Look for new version every N seconds (default: every day).\n\n\nPrivacy\n\n\ndefault_private_links\n: Check the private checkbox by default for every new link.\n\n\nhide_public_links\n: All links are hidden while logged out.\n\n\nhide_timestamps\n: Timestamps are hidden.\n\n\nFeed\n\n\nrss_permalinks\n: Enable this to redirect RSS links to Shaarli's permalinks instead of shaared URL.\n\n\nshow_atom\n: Display ATOM feed button.\n\n\nThumbnail\n\n\nenable_thumbnails\n: Enable or disable thumbnail display.\n\n\nenable_localcache\n: Enable or disable local cache.\n\n\nRedirector\n\n\nurl\n: Redirector URL, such as \nanonym.to\n.\n\n\nencode_url\n: Enable this if the redirector needs encoded URL to work properly.\n\n\nConfiguration file example\n\n\n\",\n \"hash\": \"\",\n \"salt\": \"\"\n },\n \"security\": {\n \"ban_after\": 4,\n \"session_protection_disabled\": false,\n \"ban_duration\": 1800,\n \"trusted_proxies\": [\n \"1.2.3.4\",\n \"5.6.7.8\"\n ],\n \"allowed_protocols\": [\n \"ftp\",\n \"ftps\",\n \"magnet\"\n ]\n },\n \"resources\": {\n \"data_dir\": \"data\",\n \"config\": \"data\\/config.php\",\n \"datastore\": \"data\\/datastore.php\",\n \"ban_file\": \"data\\/ipbans.php\",\n \"updates\": \"data\\/updates.txt\",\n \"log\": \"data\\/log.txt\",\n \"update_check\": \"data\\/lastupdatecheck.txt\",\n \"raintpl_tmp\": \"tmp\\/\",\n \"raintpl_tpl\": \"tpl\\/\",\n \"thumbnails_cache\": \"cache\",\n \"page_cache\": \"pagecache\"\n },\n \"general\": {\n \"check_updates\": true,\n \"rss_permalinks\": true,\n \"links_per_page\": 20,\n \"default_private_links\": true,\n \"enable_thumbnails\": true,\n \"enable_localcache\": true,\n \"check_updates_branch\": \"stable\",\n \"check_updates_interval\": 86400,\n \"enabled_plugins\": [\n \"markdown\",\n \"wallabag\",\n \"archiveorg\"\n ],\n \"timezone\": \"Europe\\/Paris\",\n \"title\": \"My Shaarli\",\n \"header_link\": \"?\"\n },\n \"extras\": {\n \"show_atom\": false,\n \"hide_public_links\": false,\n \"hide_timestamps\": false,\n \"open_shaarli\": false,\n \"redirector\": \"http://anonym.to/?\",\n \"redirector_encode_url\": false\n },\n \"general\": {\n \"header_link\": \"?\",\n \"links_per_page\": 20,\n \"enabled_plugins\": [\n \"markdown\",\n \"wallabag\"\n ],\n \"timezone\": \"Europe\\/Paris\",\n \"title\": \"My Shaarli\"\n },\n \"updates\": {\n \"check_updates\": true,\n \"check_updates_branch\": \"stable\",\n \"check_updates_interval\": 86400\n },\n \"feed\": {\n \"rss_permalinks\": true,\n \"show_atom\": false\n },\n \"privacy\": {\n \"default_private_links\": true,\n \"hide_public_links\": false,\n \"hide_timestamps\": false\n },\n \"thumbnail\": {\n \"enable_thumbnails\": true,\n \"enable_localcache\": true\n },\n \"redirector\": {\n \"url\": \"http://anonym.to/?\",\n \"encode_url\": false\n },\n \"plugins\": {\n \"WALLABAG_URL\": \"http://demo.wallabag.org\",\n \"WALLABAG_VERSION\": \"1\"\n }\n} ?>\n\n\n\n\nAdditional configuration\n\n\nThe playvideos plugin may require that you adapt your server's \n\nContent Security Policy\n \nconfiguration to work properly.", "title": "Shaarli configuration" }, { @@ -392,7 +392,7 @@ }, { "location": "/Shaarli-configuration/#file-and-directory-permissions", - "text": "The server process running Shaarli must have:\n- read access to the following resources:\n - PHP scripts: index.php , application/*.php , plugins/*.php \n - 3rd party PHP and Javascript libraries: inc/*.php , inc/*.js \n - static assets:\n - CSS stylesheets: inc/*.css \n - images/* \n - RainTPL templates: tpl/*.html \n- read , write and execution access to the following directories:\n - cache - thumbnail cache\n - data - link data store, configuration options\n - pagecache - Atom/RSS feed cache\n - tmp - RainTPL page cache On a Linux distribution:\n- the web server user will likely be www or http (for Apache2)\n- it will be a member of a group of the same name: www:www , http:http \n- to give it access to Shaarli, either:\n - unzip Shaarli in the default web server location (usually /var/www/ ) and set the web server user as the owner\n - put users in the same group as the web server, and set the appropriate access rights\n- if you have a domain / subdomain to serve Shaarli, configure the server accordingly", + "text": "The server process running Shaarli must have: read access to the following resources: PHP scripts: index.php , application/*.php , plugins/*.php 3rd party PHP and Javascript libraries: inc/*.php , inc/*.js static assets: CSS stylesheets: inc/*.css images/* RainTPL templates: tpl/*.html read , write and execution access to the following directories: cache - thumbnail cache data - link data store, configuration options pagecache - Atom/RSS feed cache tmp - RainTPL page cache On a Linux distribution: the web server user will likely be www or http (for Apache2) it will be a member of a group of the same name: www:www , http:http to give it access to Shaarli, either: unzip Shaarli in the default web server location (usually /var/www/ ) and set the web server user as the owner put users in the same group as the web server, and set the appropriate access rights if you have a domain / subdomain to serve Shaarli, configure the server accordingly", "title": "File and directory permissions" }, { @@ -496,97 +496,97 @@ "title": "Third party plugins" }, { - "location": "/Docker-101/", + "location": "/docker/docker-101/", "text": "Basics\n\n\nInstall \nDocker\n, by following the instructions relevant\nto your OS / distribution, and start the service.\n\n\nSearch an image on \nDockerHub\n\n\n$ docker search debian\n\nNAME DESCRIPTION STARS OFFICIAL AUTOMATED\nubuntu Ubuntu is a Debian-based Linux operating s... 2065 [OK]\ndebian Debian is a Linux distribution that's comp... 603 [OK]\ngoogle/debian 47 [OK]\n\n\n\n\nShow available tags for a repository\n\n\n$ curl https://index.docker.io/v1/repositories/debian/tags | python -m json.tool\n\n% Total % Received % Xferd Average Speed Time Time Time Current\nDload Upload Total Spent Left Speed\n100 1283 0 1283 0 0 433 0 --:--:-- 0:00:02 --:--:-- 433\n\n\n\n\nSample output:\n\n\n[\n {\n \"layer\": \"85a02782\",\n \"name\": \"stretch\"\n },\n {\n \"layer\": \"59abecbc\",\n \"name\": \"testing\"\n },\n {\n \"layer\": \"bf0fd686\",\n \"name\": \"unstable\"\n },\n {\n \"layer\": \"60c52dbe\",\n \"name\": \"wheezy\"\n },\n {\n \"layer\": \"c5b806fe\",\n \"name\": \"wheezy-backports\"\n }\n]\n\n\n\n\n\nPull an image from DockerHub\n\n\n$ docker pull repository[:tag]\n\n$ docker pull debian:wheezy\nwheezy: Pulling from debian\n4c8cbfd2973e: Pull complete\n60c52dbe9d91: Pull complete\nDigest: sha256:c584131da2ac1948aa3e66468a4424b6aea2f33acba7cec0b631bdb56254c4fe\nStatus: Downloaded newer image for debian:wheezy", "title": "Docker 101" }, { - "location": "/Docker-101/#basics", + "location": "/docker/docker-101/#basics", "text": "Install Docker , by following the instructions relevant\nto your OS / distribution, and start the service.", "title": "Basics" }, { - "location": "/Docker-101/#search-an-image-on-dockerhub", + "location": "/docker/docker-101/#search-an-image-on-dockerhub", "text": "$ docker search debian\n\nNAME DESCRIPTION STARS OFFICIAL AUTOMATED\nubuntu Ubuntu is a Debian-based Linux operating s... 2065 [OK]\ndebian Debian is a Linux distribution that's comp... 603 [OK]\ngoogle/debian 47 [OK]", "title": "Search an image on DockerHub" }, { - "location": "/Docker-101/#show-available-tags-for-a-repository", + "location": "/docker/docker-101/#show-available-tags-for-a-repository", "text": "$ curl https://index.docker.io/v1/repositories/debian/tags | python -m json.tool\n\n% Total % Received % Xferd Average Speed Time Time Time Current\nDload Upload Total Spent Left Speed\n100 1283 0 1283 0 0 433 0 --:--:-- 0:00:02 --:--:-- 433 Sample output: [\n {\n \"layer\": \"85a02782\",\n \"name\": \"stretch\"\n },\n {\n \"layer\": \"59abecbc\",\n \"name\": \"testing\"\n },\n {\n \"layer\": \"bf0fd686\",\n \"name\": \"unstable\"\n },\n {\n \"layer\": \"60c52dbe\",\n \"name\": \"wheezy\"\n },\n {\n \"layer\": \"c5b806fe\",\n \"name\": \"wheezy-backports\"\n }\n]", "title": "Show available tags for a repository" }, { - "location": "/Docker-101/#pull-an-image-from-dockerhub", + "location": "/docker/docker-101/#pull-an-image-from-dockerhub", "text": "$ docker pull repository[:tag]\n\n$ docker pull debian:wheezy\nwheezy: Pulling from debian\n4c8cbfd2973e: Pull complete\n60c52dbe9d91: Pull complete\nDigest: sha256:c584131da2ac1948aa3e66468a4424b6aea2f33acba7cec0b631bdb56254c4fe\nStatus: Downloaded newer image for debian:wheezy", "title": "Pull an image from DockerHub" }, { - "location": "/Shaarli-images/", - "text": "Get and run a Shaarli image\n\n\nDockerHub repository\n\n\nThe images can be found in the \nshaarli/shaarli\n\nrepository.\n\n\nAvailable image tags\n\n\n\n\nlatest\n: master branch (tarball release)\n\n\nstable\n: stable branch (tarball release)\n\n\ndev\n: master branch (Git clone)\n\n\n\n\nAll images rely on:\n- \nDebian 8 Jessie\n\n- \nPHP5-FPM\n\n- \nNginx\n\n\nDownload from DockerHub\n\n\n$ docker pull shaarli/shaarli\nlatest: Pulling from shaarli/shaarli\n32716d9fcddb: Pull complete\n84899d045435: Pull complete\n4b6ad7444763: Pull complete\ne0345ef7a3e0: Pull complete\n5c1dd344094f: Pull complete\n6422305a200b: Pull complete\n7d63f861dbef: Pull complete\n3eb97210645c: Pull complete\n869319d746ff: Already exists\n869319d746ff: Pulling fs layer\n902b87aaaec9: Already exists\nDigest: sha256:f836b4627b958b3f83f59c332f22f02fcd495ace3056f2be2c4912bd8704cc98\nStatus: Downloaded newer image for shaarli/shaarli:latest\n\n\n\n\nCreate and start a new container from the image\n\n\n# map the host's :8000 port to the container's :80 port\n$ docker create -p 8000:80 shaarli/shaarli\nd40b7af693d678958adedfb88f87d6ea0237186c23de5c4102a55a8fcb499101\n\n# launch the container in the background\n$ docker start d40b7af693d678958adedfb88f87d6ea0237186c23de5c4102a55a8fcb499101\nd40b7af693d678958adedfb88f87d6ea0237186c23de5c4102a55a8fcb499101\n\n# list active containers\n$ docker ps\nCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES\nd40b7af693d6 shaarli/shaarli /usr/bin/supervisor 15 seconds ago Up 4 seconds 0.0.0.0:8000->80/tcp backstabbing_galileo\n\n\n\n\nStop and destroy a container\n\n\n$ docker stop backstabbing_galileo # those docker guys are really rude to physicists!\nbackstabbing_galileo\n\n# check the container is stopped\n$ docker ps\nCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES\n\n# list ALL containers\n$ docker ps -a\nCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES\nd40b7af693d6 shaarli/shaarli /usr/bin/supervisor 5 minutes ago Exited (0) 48 seconds ago backstabbing_galileo\n\n# destroy the container\n$ docker rm backstabbing_galileo # let's put an end to these barbarian practices\nbackstabbing_galileo\n\n$ docker ps -a\nCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES", + "location": "/docker/shaarli-images/", + "text": "Get and run a Shaarli image\n\n\nDockerHub repository\n\n\nThe images can be found in the \nshaarli/shaarli\n\nrepository.\n\n\nAvailable image tags\n\n\n\n\nlatest\n: master branch (tarball release)\n\n\nstable\n: stable branch (tarball release)\n\n\n\n\nAll images rely on:\n- \nDebian 8 Jessie\n\n- \nPHP5-FPM\n\n- \nNginx\n\n\nDownload from DockerHub\n\n\n$ docker pull shaarli/shaarli\nlatest: Pulling from shaarli/shaarli\n32716d9fcddb: Pull complete\n84899d045435: Pull complete\n4b6ad7444763: Pull complete\ne0345ef7a3e0: Pull complete\n5c1dd344094f: Pull complete\n6422305a200b: Pull complete\n7d63f861dbef: Pull complete\n3eb97210645c: Pull complete\n869319d746ff: Already exists\n869319d746ff: Pulling fs layer\n902b87aaaec9: Already exists\nDigest: sha256:f836b4627b958b3f83f59c332f22f02fcd495ace3056f2be2c4912bd8704cc98\nStatus: Downloaded newer image for shaarli/shaarli:latest\n\n\n\n\nCreate and start a new container from the image\n\n\n# map the host's :8000 port to the container's :80 port\n$ docker create -p 8000:80 shaarli/shaarli\nd40b7af693d678958adedfb88f87d6ea0237186c23de5c4102a55a8fcb499101\n\n# launch the container in the background\n$ docker start d40b7af693d678958adedfb88f87d6ea0237186c23de5c4102a55a8fcb499101\nd40b7af693d678958adedfb88f87d6ea0237186c23de5c4102a55a8fcb499101\n\n# list active containers\n$ docker ps\nCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES\nd40b7af693d6 shaarli/shaarli /usr/bin/supervisor 15 seconds ago Up 4 seconds 0.0.0.0:8000->80/tcp backstabbing_galileo\n\n\n\n\nStop and destroy a container\n\n\n$ docker stop backstabbing_galileo # those docker guys are really rude to physicists!\nbackstabbing_galileo\n\n# check the container is stopped\n$ docker ps\nCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES\n\n# list ALL containers\n$ docker ps -a\nCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES\nd40b7af693d6 shaarli/shaarli /usr/bin/supervisor 5 minutes ago Exited (0) 48 seconds ago backstabbing_galileo\n\n# destroy the container\n$ docker rm backstabbing_galileo # let's put an end to these barbarian practices\nbackstabbing_galileo\n\n$ docker ps -a\nCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES", "title": "Shaarli images" }, { - "location": "/Shaarli-images/#get-and-run-a-shaarli-image", + "location": "/docker/shaarli-images/#get-and-run-a-shaarli-image", "text": "", "title": "Get and run a Shaarli image" }, { - "location": "/Shaarli-images/#dockerhub-repository", + "location": "/docker/shaarli-images/#dockerhub-repository", "text": "The images can be found in the shaarli/shaarli \nrepository.", "title": "DockerHub repository" }, { - "location": "/Shaarli-images/#available-image-tags", - "text": "latest : master branch (tarball release) stable : stable branch (tarball release) dev : master branch (Git clone) All images rely on:\n- Debian 8 Jessie \n- PHP5-FPM \n- Nginx", + "location": "/docker/shaarli-images/#available-image-tags", + "text": "latest : master branch (tarball release) stable : stable branch (tarball release) All images rely on:\n- Debian 8 Jessie \n- PHP5-FPM \n- Nginx", "title": "Available image tags" }, { - "location": "/Shaarli-images/#download-from-dockerhub", + "location": "/docker/shaarli-images/#download-from-dockerhub", "text": "$ docker pull shaarli/shaarli\nlatest: Pulling from shaarli/shaarli\n32716d9fcddb: Pull complete\n84899d045435: Pull complete\n4b6ad7444763: Pull complete\ne0345ef7a3e0: Pull complete\n5c1dd344094f: Pull complete\n6422305a200b: Pull complete\n7d63f861dbef: Pull complete\n3eb97210645c: Pull complete\n869319d746ff: Already exists\n869319d746ff: Pulling fs layer\n902b87aaaec9: Already exists\nDigest: sha256:f836b4627b958b3f83f59c332f22f02fcd495ace3056f2be2c4912bd8704cc98\nStatus: Downloaded newer image for shaarli/shaarli:latest", "title": "Download from DockerHub" }, { - "location": "/Shaarli-images/#create-and-start-a-new-container-from-the-image", + "location": "/docker/shaarli-images/#create-and-start-a-new-container-from-the-image", "text": "# map the host's :8000 port to the container's :80 port\n$ docker create -p 8000:80 shaarli/shaarli\nd40b7af693d678958adedfb88f87d6ea0237186c23de5c4102a55a8fcb499101\n\n# launch the container in the background\n$ docker start d40b7af693d678958adedfb88f87d6ea0237186c23de5c4102a55a8fcb499101\nd40b7af693d678958adedfb88f87d6ea0237186c23de5c4102a55a8fcb499101\n\n# list active containers\n$ docker ps\nCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES\nd40b7af693d6 shaarli/shaarli /usr/bin/supervisor 15 seconds ago Up 4 seconds 0.0.0.0:8000->80/tcp backstabbing_galileo", "title": "Create and start a new container from the image" }, { - "location": "/Shaarli-images/#stop-and-destroy-a-container", + "location": "/docker/shaarli-images/#stop-and-destroy-a-container", "text": "$ docker stop backstabbing_galileo # those docker guys are really rude to physicists!\nbackstabbing_galileo\n\n# check the container is stopped\n$ docker ps\nCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES\n\n# list ALL containers\n$ docker ps -a\nCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES\nd40b7af693d6 shaarli/shaarli /usr/bin/supervisor 5 minutes ago Exited (0) 48 seconds ago backstabbing_galileo\n\n# destroy the container\n$ docker rm backstabbing_galileo # let's put an end to these barbarian practices\nbackstabbing_galileo\n\n$ docker ps -a\nCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES", "title": "Stop and destroy a container" }, { - "location": "/Reverse-proxy-configuration/", + "location": "/docker/reverse-proxy-configuration/", "text": "TODO, see https://github.com/shaarli/Shaarli/issues/888\n\n\nHAProxy\n\n\nNginx", "title": "Reverse proxy configuration" }, { - "location": "/Reverse-proxy-configuration/#haproxy", + "location": "/docker/reverse-proxy-configuration/#haproxy", "text": "", "title": "HAProxy" }, { - "location": "/Reverse-proxy-configuration/#nginx", + "location": "/docker/reverse-proxy-configuration/#nginx", "text": "", "title": "Nginx" }, { - "location": "/Docker-resources/", + "location": "/docker/resources/", "text": "Docker\n\n\n\n\nInteractive Docker training portal\n on \nKatakoda\n\n\nWhere are Docker images stored?\n\n\nDockerfile reference\n\n\nDockerfile best practices\n\n\nVolumes\n\n\n\n\nDockerHub\n\n\n\n\nRepositories\n\n\nTeams and organizations\n\n\nGitHub automated build\n\n\n\n\nService management\n\n\n\n\nUsing supervisord\n\n\nNginx in the foreground\n\n\nsupervisord", "title": "Docker resources" }, { - "location": "/Docker-resources/#docker", + "location": "/docker/resources/#docker", "text": "Interactive Docker training portal on Katakoda Where are Docker images stored? Dockerfile reference Dockerfile best practices Volumes", "title": "Docker" }, { - "location": "/Docker-resources/#dockerhub", + "location": "/docker/resources/#dockerhub", "text": "Repositories Teams and organizations GitHub automated build", "title": "DockerHub" }, { - "location": "/Docker-resources/#service-management", + "location": "/docker/resources/#service-management", "text": "Using supervisord Nginx in the foreground supervisord", "title": "Service management" }, diff --git a/doc/html/search.html b/doc/html/search.html index 49541cda..cf6e46b9 100644 --- a/doc/html/search.html +++ b/doc/html/search.html @@ -90,19 +90,19 @@ diff --git a/doc/html/sitemap.xml b/doc/html/sitemap.xml index cbf35654..945e92e6 100644 --- a/doc/html/sitemap.xml +++ b/doc/html/sitemap.xml @@ -4,7 +4,7 @@ / - 2017-07-04 + 2017-07-29 daily @@ -13,43 +13,43 @@ /Download-and-Installation/ - 2017-07-04 + 2017-07-29 daily /Upgrade-and-migration/ - 2017-07-04 + 2017-07-29 daily /Server-requirements/ - 2017-07-04 + 2017-07-29 daily /Server-configuration/ - 2017-07-04 + 2017-07-29 daily /Server-security/ - 2017-07-04 + 2017-07-29 daily /Shaarli-configuration/ - 2017-07-04 + 2017-07-29 daily /Plugins/ - 2017-07-04 + 2017-07-29 daily @@ -58,26 +58,26 @@ - /Docker-101/ - 2017-07-04 + /docker/docker-101/ + 2017-07-29 daily - /Shaarli-images/ - 2017-07-04 + /docker/shaarli-images/ + 2017-07-29 daily - /Reverse-proxy-configuration/ - 2017-07-04 + /docker/reverse-proxy-configuration/ + 2017-07-29 daily - /Docker-resources/ - 2017-07-04 + /docker/resources/ + 2017-07-29 daily @@ -87,37 +87,37 @@ /Features/ - 2017-07-04 + 2017-07-29 daily /Bookmarklet/ - 2017-07-04 + 2017-07-29 daily /Browsing-and-searching/ - 2017-07-04 + 2017-07-29 daily /Firefox-share/ - 2017-07-04 + 2017-07-29 daily /RSS-feeds/ - 2017-07-04 + 2017-07-29 daily /REST-API/ - 2017-07-04 + 2017-07-29 daily @@ -127,13 +127,13 @@ /Backup,-restore,-import-and-export/ - 2017-07-04 + 2017-07-29 daily /Various-hacks/ - 2017-07-04 + 2017-07-29 daily @@ -142,7 +142,7 @@ /Troubleshooting/ - 2017-07-04 + 2017-07-29 daily @@ -151,79 +151,79 @@ /Development-guidelines/ - 2017-07-04 + 2017-07-29 daily /Continuous-integration-tools/ - 2017-07-04 + 2017-07-29 daily /GnuPG-signature/ - 2017-07-04 + 2017-07-29 daily /Coding-guidelines/ - 2017-07-04 + 2017-07-29 daily /Directory-structure/ - 2017-07-04 + 2017-07-29 daily /3rd-party-libraries/ - 2017-07-04 + 2017-07-29 daily /Plugin-System/ - 2017-07-04 + 2017-07-29 daily /Release-Shaarli/ - 2017-07-04 + 2017-07-29 daily /Versioning-and-Branches/ - 2017-07-04 + 2017-07-29 daily /Security/ - 2017-07-04 + 2017-07-29 daily /Static-analysis/ - 2017-07-04 + 2017-07-29 daily /Theming/ - 2017-07-04 + 2017-07-29 daily /Unit-tests/ - 2017-07-04 + 2017-07-29 daily @@ -233,13 +233,13 @@ /FAQ/ - 2017-07-04 + 2017-07-29 daily /Community-&-Related-software/ - 2017-07-04 + 2017-07-29 daily -- cgit v1.2.3