diff options
Diffstat (limited to 'docs/en/user/installation.rst')
-rw-r--r-- | docs/en/user/installation.rst | 99 |
1 files changed, 85 insertions, 14 deletions
diff --git a/docs/en/user/installation.rst b/docs/en/user/installation.rst index c2174a53..d22f8549 100644 --- a/docs/en/user/installation.rst +++ b/docs/en/user/installation.rst | |||
@@ -34,6 +34,9 @@ and it's corresponding database server. | |||
34 | Installation | 34 | Installation |
35 | ------------ | 35 | ------------ |
36 | 36 | ||
37 | On a dedicated web server (recommended way) | ||
38 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
39 | |||
37 | 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 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. |
38 | 41 | ||
39 | Install Composer: | 42 | Install Composer: |
@@ -54,7 +57,7 @@ To install wallabag itself, you must run these two commands: | |||
54 | SYMFONY_ENV=prod composer install --no-dev -o --prefer-dist | 57 | SYMFONY_ENV=prod composer install --no-dev -o --prefer-dist |
55 | php bin/console wallabag:install --env=prod | 58 | php bin/console wallabag:install --env=prod |
56 | 59 | ||
57 | To start php's build-in server and test if everything did install correctly, you can do: | 60 | To start PHP's build-in server and test if everything did install correctly, you can do: |
58 | 61 | ||
59 | :: | 62 | :: |
60 | 63 | ||
@@ -62,14 +65,48 @@ To start php's build-in server and test if everything did install correctly, you | |||
62 | 65 | ||
63 | And access wallabag at http://yourserverip:8000 | 66 | And access wallabag at http://yourserverip:8000 |
64 | 67 | ||
65 | .. note:: | 68 | .. tip:: |
66 | 69 | ||
67 | 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 to the `Symfony documentation <http://symfony.com/doc/current/cookbook/configuration/external_parameters.html>`__. |
68 | 71 | ||
69 | Installing on Apache | 72 | On a shared hosting |
70 | -------------------- | 73 | ~~~~~~~~~~~~~~~~~~~ |
74 | |||
75 | We provide you a package with all dependancies inside. | ||
76 | The default configuration uses SQLite for the database. If you want to change these settings, please edit ``app/config/parameters.yml``. | ||
77 | |||
78 | We already created a user: login and password are ``wallabag``. | ||
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). | ||
81 | |||
82 | Execute this command to download and extract the latest package: | ||
83 | |||
84 | .. code-block:: bash | ||
71 | 85 | ||
72 | Assuming you install wallabag in the /var/www/wallabag folder and that you want to use php as an Apache module, here's a vhost for wallabag: | 86 | wget http://wllbg.org/latest-v2-package && tar xvf latest-v2-package |
87 | |||
88 | Now, read the following documentation to create your virtual host, then access to 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``. | ||
90 | |||
91 | Installation with Docker | ||
92 | ------------------------ | ||
93 | |||
94 | We provide you a Docker image to install wallabag easily. Have a look to our repository on `Docker Hub <https://hub.docker.com/r/wallabag/wallabag/>`__ to have more information. | ||
95 | |||
96 | Command to launch container | ||
97 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
98 | |||
99 | .. code-block:: bash | ||
100 | |||
101 | docker pull wallabag/wallabag | ||
102 | |||
103 | Virtual hosts | ||
104 | ------------- | ||
105 | |||
106 | Configuration on Apache | ||
107 | ~~~~~~~~~~~~~~~~~~~~~~~ | ||
108 | |||
109 | Assuming you install wallabag in the ``/var/www/wallabag`` folder and that you want to use PHP as an Apache module, here's a vhost for wallabag: | ||
73 | 110 | ||
74 | :: | 111 | :: |
75 | 112 | ||
@@ -111,10 +148,10 @@ Assuming you install wallabag in the /var/www/wallabag folder and that you want | |||
111 | 148 | ||
112 | After reloading or restarting Apache, you should now be able to access wallabag at http://domain.tld. | 149 | After reloading or restarting Apache, you should now be able to access wallabag at http://domain.tld. |
113 | 150 | ||
114 | Installing on Nginx | 151 | Configuration on Nginx |
115 | ------------------- | 152 | ~~~~~~~~~~~~~~~~~~~~~~ |
116 | 153 | ||
117 | Assuming you install wallabag in the /var/www/wallabag folder, here's the recipe for wallabag : | 154 | Assuming you install wallabag in the ``/var/www/wallabag`` folder, here's the recipe for wallabag : |
118 | 155 | ||
119 | :: | 156 | :: |
120 | 157 | ||
@@ -151,22 +188,57 @@ Assuming you install wallabag in the /var/www/wallabag folder, here's the recipe | |||
151 | 188 | ||
152 | After reloading or restarting nginx, you should now be able to access wallabag at http://domain.tld. | 189 | After reloading or restarting nginx, you should now be able to access wallabag at http://domain.tld. |
153 | 190 | ||
154 | .. note:: | 191 | .. tip:: |
155 | 192 | ||
156 | When you want to import large file into wallabag, you need to add this line in your nginx configuration ``client_max_body_size XM; # allows file uploads up to X megabytes``. | 193 | When you want to import large file into wallabag, you need to add this line in your nginx configuration ``client_max_body_size XM; # allows file uploads up to X megabytes``. |
157 | 194 | ||
195 | Configuration on lighttpd | ||
196 | ~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
197 | |||
198 | Assuming you install wallabag in the /var/www/wallabag folder, here's the recipe for wallabag (edit your ``lighttpd.conf`` file and paste this configuration into it): | ||
199 | |||
200 | :: | ||
201 | |||
202 | server.modules = ( | ||
203 | "mod_fastcgi", | ||
204 | "mod_access", | ||
205 | "mod_alias", | ||
206 | "mod_compress", | ||
207 | "mod_redirect", | ||
208 | "mod_rewrite", | ||
209 | ) | ||
210 | server.document-root = "/var/www/wallabag/web" | ||
211 | server.upload-dirs = ( "/var/cache/lighttpd/uploads" ) | ||
212 | server.errorlog = "/var/log/lighttpd/error.log" | ||
213 | server.pid-file = "/var/run/lighttpd.pid" | ||
214 | server.username = "www-data" | ||
215 | server.groupname = "www-data" | ||
216 | server.port = 80 | ||
217 | server.follow-symlink = "enable" | ||
218 | index-file.names = ( "index.php", "index.html", "index.lighttpd.html") | ||
219 | url.access-deny = ( "~", ".inc" ) | ||
220 | static-file.exclude-extensions = ( ".php", ".pl", ".fcgi" ) | ||
221 | compress.cache-dir = "/var/cache/lighttpd/compress/" | ||
222 | compress.filetype = ( "application/javascript", "text/css", "text/html", "text/plain" ) | ||
223 | include_shell "/usr/share/lighttpd/use-ipv6.pl " + server.port | ||
224 | include_shell "/usr/share/lighttpd/create-mime.assign.pl" | ||
225 | include_shell "/usr/share/lighttpd/include-conf-enabled.pl" | ||
226 | dir-listing.activate = "disable" | ||
227 | |||
228 | url.rewrite-if-not-file = ( | ||
229 | "^/([^?])(?:\?(.))?" => "/app.php?$1&$2", | ||
230 | "^/([^?]*)" => "/app.php?=$1", | ||
231 | ) | ||
158 | 232 | ||
159 | Rights access to the folders of the project | 233 | Rights access to the folders of the project |
160 | ------------------------------------------- | 234 | ------------------------------------------- |
161 | 235 | ||
162 | 236 | Test environment | |
163 | Test Environment | ||
164 | ~~~~~~~~~~~~~~~~ | 237 | ~~~~~~~~~~~~~~~~ |
165 | 238 | ||
166 | When we just want to test wallabag, we just run the command ``php bin/console server:run --env=prod`` to start our wallabag instance and everything will go smoothly because the user who started the project can access to the current folder naturally, without any problem. | 239 | When we just want to test wallabag, we just run the command ``php bin/console server:run --env=prod`` to start our wallabag instance and everything will go smoothly because the user who started the project can access to the current folder naturally, without any problem. |
167 | 240 | ||
168 | 241 | Production environment | |
169 | Production Environment | ||
170 | ~~~~~~~~~~~~~~~~~~~~~~ | 242 | ~~~~~~~~~~~~~~~~~~~~~~ |
171 | 243 | ||
172 | As soon as we use Apache or Nginx to access to our wallabag instance, and not from the command ``php bin/console server:run --env=prod`` to start it, we should take care to grant the good rights on the good folders to keep safe all the folders of the project. | 244 | As soon as we use Apache or Nginx to access to our wallabag instance, and not from the command ``php bin/console server:run --env=prod`` to start it, we should take care to grant the good rights on the good folders to keep safe all the folders of the project. |
@@ -180,4 +252,3 @@ This is due to the fact that we will need to grant the same rights access on the | |||
180 | .. code-block:: bash | 252 | .. code-block:: bash |
181 | 253 | ||
182 | chown -R www-data:www-data /var/www/wallabag/var | 254 | chown -R www-data:www-data /var/www/wallabag/var |
183 | |||