diff options
-rw-r--r-- | docs/en/user/installation.rst | 68 |
1 files changed, 57 insertions, 11 deletions
diff --git a/docs/en/user/installation.rst b/docs/en/user/installation.rst index 6d804304..41542c45 100644 --- a/docs/en/user/installation.rst +++ b/docs/en/user/installation.rst | |||
@@ -23,13 +23,13 @@ You'll need the following extensions for wallabag to work. Some of these may alr | |||
23 | - php-gettext | 23 | - php-gettext |
24 | - php-tokenizer | 24 | - php-tokenizer |
25 | 25 | ||
26 | wallabag uses PDO to connect to database, so you'll need one of: | 26 | wallabag uses PDO to connect to the database, so you'll need one of the following: |
27 | 27 | ||
28 | - pdo_mysql | 28 | - pdo_mysql |
29 | - pdo_sqlite | 29 | - pdo_sqlite |
30 | - pdo_pgsql | 30 | - pdo_pgsql |
31 | 31 | ||
32 | and it's corresponding database server. | 32 | and its corresponding database server. |
33 | 33 | ||
34 | Installation | 34 | Installation |
35 | ------------ | 35 | ------------ |
@@ -37,7 +37,7 @@ Installation | |||
37 | On a dedicated web server (recommended way) | 37 | On a dedicated web server (recommended way) |
38 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | 38 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
39 | 39 | ||
40 | wallabag uses a big number of libraries in order to function. These libraries must be installed with a tool called Composer. You need to install it if you don't already have. | 40 | wallabag uses a large number of libraries in order to function. These libraries must be installed with a tool called Composer. You need to install it if you have not already done so. |
41 | 41 | ||
42 | Install Composer: | 42 | Install Composer: |
43 | 43 | ||
@@ -47,7 +47,7 @@ Install Composer: | |||
47 | 47 | ||
48 | You can find specific instructions `here <https://getcomposer.org/doc/00-intro.md>`__: | 48 | You can find specific instructions `here <https://getcomposer.org/doc/00-intro.md>`__: |
49 | 49 | ||
50 | To install wallabag itself, you must run these two commands: | 50 | To install wallabag itself, you must run the following commands: |
51 | 51 | ||
52 | :: | 52 | :: |
53 | 53 | ||
@@ -67,17 +67,17 @@ And access wallabag at http://yourserverip:8000 | |||
67 | 67 | ||
68 | .. tip:: | 68 | .. tip:: |
69 | 69 | ||
70 | To define parameters with environment variables, you have to set these variables with ``SYMFONY__`` prefix. For example, ``SYMFONY__DATABASE_DRIVER``. You can have a look to the `Symfony documentation <http://symfony.com/doc/current/cookbook/configuration/external_parameters.html>`__. | 70 | To define parameters with environment variables, you have to set these variables with ``SYMFONY__`` prefix. For example, ``SYMFONY__DATABASE_DRIVER``. You can have a look at `Symfony documentation <http://symfony.com/doc/current/cookbook/configuration/external_parameters.html>`__. |
71 | 71 | ||
72 | On a shared hosting | 72 | On a shared hosting |
73 | ~~~~~~~~~~~~~~~~~~~ | 73 | ~~~~~~~~~~~~~~~~~~~ |
74 | 74 | ||
75 | We provide you a package with all dependancies inside. | 75 | We provide a package with all dependencies inside. |
76 | The default configuration uses SQLite for the database. If you want to change these settings, please edit ``app/config/parameters.yml``. | 76 | The default configuration uses SQLite for the database. If you want to change these settings, please edit ``app/config/parameters.yml``. |
77 | 77 | ||
78 | We already created a user: login and password are ``wallabag``. | 78 | We already created a user: login and password are ``wallabag``. |
79 | 79 | ||
80 | .. caution:: With this package, wallabag don't check mandatory extensions used in the application (theses checks are made during ``composer install`` when you have a dedicated web server, see above). | 80 | .. caution:: With this package, wallabag doesn't check for mandatory extensions used in the application (theses checks are made during ``composer install`` when you have a dedicated web server, see above). |
81 | 81 | ||
82 | Execute this command to download and extract the latest package: | 82 | Execute this command to download and extract the latest package: |
83 | 83 | ||
@@ -85,7 +85,7 @@ Execute this command to download and extract the latest package: | |||
85 | 85 | ||
86 | wget http://wllbg.org/latest-v2-package && tar xvf latest-v2-package | 86 | wget http://wllbg.org/latest-v2-package && tar xvf latest-v2-package |
87 | 87 | ||
88 | Now, read the following documentation to create your virtual host, then access to your wallabag. | 88 | Now, read the following documentation to create your virtual host, then access your wallabag. |
89 | If you changed the database configuration to use MySQL or PostgreSQL, you need to create a user via this command ``php bin/console wallabag:install --env=prod``. | 89 | If you changed the database configuration to use MySQL or PostgreSQL, you need to create a user via this command ``php bin/console wallabag:install --env=prod``. |
90 | 90 | ||
91 | Installation with Docker | 91 | Installation with Docker |
@@ -151,7 +151,7 @@ After reloading or restarting Apache, you should now be able to access wallabag | |||
151 | Configuration on Nginx | 151 | Configuration on Nginx |
152 | ~~~~~~~~~~~~~~~~~~~~~~ | 152 | ~~~~~~~~~~~~~~~~~~~~~~ |
153 | 153 | ||
154 | Assuming you install wallabag in the ``/var/www/wallabag`` folder, here's the recipe for wallabag : | 154 | Assuming you installed wallabag in the ``/var/www/wallabag`` folder, here's the recipe for wallabag : |
155 | 155 | ||
156 | :: | 156 | :: |
157 | 157 | ||
@@ -258,7 +258,7 @@ It has to be the same for the following folders | |||
258 | * /var/www/wallabag/bin/ | 258 | * /var/www/wallabag/bin/ |
259 | * /var/www/wallabag/app/config/ | 259 | * /var/www/wallabag/app/config/ |
260 | * /var/www/wallabag/vendor/ | 260 | * /var/www/wallabag/vendor/ |
261 | * /var/www/wallabag/data/ | 261 | * /var/www/wallabag/data/ |
262 | 262 | ||
263 | by entering | 263 | by entering |
264 | 264 | ||
@@ -269,10 +269,56 @@ by entering | |||
269 | chown -R www-data:www-data /var/www/wallabag/vendor | 269 | chown -R www-data:www-data /var/www/wallabag/vendor |
270 | chown -R www-data:www-data /var/www/wallabag/data/ | 270 | chown -R www-data:www-data /var/www/wallabag/data/ |
271 | 271 | ||
272 | otherwise, sooner or later you will meet this error messages | 272 | otherwise, sooner or later you will see these error messages: |
273 | 273 | ||
274 | .. code-block:: bash | 274 | .. code-block:: bash |
275 | 275 | ||
276 | Unable to write to the "bin" directory. | 276 | Unable to write to the "bin" directory. |
277 | file_put_contents(app/config/parameters.yml): failed to open stream: Permission denied | 277 | file_put_contents(app/config/parameters.yml): failed to open stream: Permission denied |
278 | file_put_contents(/.../wallabag/vendor/autoload.php): failed to open stream: Permission denied | 278 | file_put_contents(/.../wallabag/vendor/autoload.php): failed to open stream: Permission denied |
279 | |||
280 | Additional rules for SELinux | ||
281 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
282 | |||
283 | If SELinux is enabled on your system, you will need to configure additional contexts in order for wallabag to function properly. To check if SELinux is enabled, simply enter the following: | ||
284 | |||
285 | ``getenforce`` | ||
286 | |||
287 | This will return ``Enforcing`` if SELinux is enabled. Creating a new context involves the following syntax: | ||
288 | |||
289 | ``semanage fcontext -a -t <context type> <full path>`` | ||
290 | |||
291 | For example: | ||
292 | |||
293 | ``semanage fcontext -a -t httpd_sys_content_t "/var/www/wallabag(/.*)?"`` | ||
294 | |||
295 | This will recursively apply the httpd_sys_content_t context to the wallabag directory and all underlying files and folders. The following rules are needed: | ||
296 | |||
297 | +-----------------------------------+----------------------------+ | ||
298 | | Full path | Context | | ||
299 | +===================================+============================+ | ||
300 | | /var/www/wallabag(/.*)? | ``httpd_sys_content_t`` | | ||
301 | +-----------------------------------+----------------------------+ | ||
302 | | /var/www/wallabag/data(/.*)? | ``httpd_sys_rw_content_t`` | | ||
303 | +-----------------------------------+----------------------------+ | ||
304 | | /var/www/wallabag/var/logs(/.*)? | ``httpd_log_t`` | | ||
305 | +-----------------------------------+----------------------------+ | ||
306 | | /var/www/wallabag/var/cache(/.*)? | ``httpd_cache_t`` | | ||
307 | +-----------------------------------+----------------------------+ | ||
308 | |||
309 | After creating these contexts, enter the following in order to apply your rules: | ||
310 | |||
311 | ``restorecon -R -v /var/www/wallabag`` | ||
312 | |||
313 | You can check contexts in a directory by typing ``ls -lZ`` and you can see all of your current rules with ``semanage fcontext -l -C``. | ||
314 | |||
315 | If you're installing the preconfigured latest-v2-package, then an additional rule is needed during the initial setup: | ||
316 | |||
317 | ``semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/wallabag/var"`` | ||
318 | |||
319 | After you successfully access your wallabag and complete the initial setup, this context can be removed: | ||
320 | |||
321 | :: | ||
322 | |||
323 | semanage fcontext -d -t httpd_sys_rw_content_t "/var/www/wallabag/var" | ||
324 | retorecon -R -v /var/www/wallabag/var | ||