Skip to content

Commit 9bab308

Browse files
authored
Merge pull request #111 from DrDBanner/patch-1
menu rearranged, cli added, <p> tags removed, "private" iframe hidden
2 parents f01f552 + dcb1a50 commit 9bab308

File tree

1 file changed

+44
-30
lines changed

1 file changed

+44
-30
lines changed

source/en/self-host-installation.md

Lines changed: 44 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -50,47 +50,58 @@ Invoice Ninja does not support installation into a subdirectory. You will need a
5050

5151
## Installing Invoice Ninja
5252

53-
### Ubuntu 20.04 (Recommended)
53+
### CLI script
54+
55+
If your webserver is already configured and you have credentials to your database, community member Dros has created a CLI management and maintenance script for you.
56+
57+
[CLI - install | update | backup ](https://github.com/DrDBanner/inmanage)
58+
59+
*This script complements the excellent [Distribution based server configurations](#distribution-based-server-configurations) below. Once your server meets the prerequisites (webserver configured & database accessible), this script makes the rest of the setup a breeze.*
60+
61+
### Docker
62+
63+
We have a dedicated repository with detailed instructions on how to get started <a href="https://github.com/invoiceninja/dockerfiles">HERE</a>.
64+
65+
<iframe width="560" height="315" src="https://www.youtube.com/embed/xo6a3KtLC2g" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
66+
67+
<x-warning>
68+
If you make changes to your env file, please remember to reboot the container for the changes to take effect!
69+
</x-warning>
70+
71+
### Distribution based server configurations
72+
73+
If you need to configure your server from scratch, you'll find some excellent tutorials below.
74+
75+
#### Ubuntu 20.04 (Recommended)
5476

5577
Community member TechnicallyComputers has a very helpful step by step guide on how to install Invoice Ninja v5 from scratch onto Ubuntu, you can access the guide [here](https://forum.invoiceninja.com/t/install-invoice-ninja-v5-on-ubuntu-20-04/4588)
5678

57-
### Ubuntu 22.04
79+
#### Ubuntu 22.04
5880

5981
Community member TechnicallyComputers has a very helpful step by step guide on how to install Invoice Ninja v5.5 from scratch onto Ubuntu, you can access the guide [here](https://forum.invoiceninja.com/t/install-invoice-ninja-v5-5-on-ubuntu-22-04/13272)
6082

61-
### Installing on CentOS 8
83+
#### Installing on CentOS 8
6284

6385
If CentOS is more your Flavour, community member TechnicallyComputers has a very thorough step by step installation guide [here](https://forum.invoiceninja.com/t/install-invoice-ninja-v5-on-centos-8/4293).
6486

65-
### Installing on Arch
87+
#### Installing on Arch
6688

6789
If Arch Linux is more your flavour, community member brackenhill-mob has a very thorough step by step installation guide [here](https://forum.invoiceninja.com/t/howto-install-invoice-ninja-v5-on-arch-linux/6196)
6890

69-
### Installing on Enterprise Linux
91+
#### Installing on Enterprise Linux
7092

7193
TechnicallyComputers also has a guide for installation Invoice Ninja on Enterprise Linux [here](https://forum.invoiceninja.com/t/install-invoice-ninja-v5-on-enterprise-linux-8/4293)
7294

73-
### Installing using Docker
7495

75-
We have a dedicated repository with detailed instructions on how to get started <a href="https://github.com/invoiceninja/dockerfiles">HERE</a>.
76-
77-
<iframe width="560" height="315" src="https://www.youtube.com/embed/xo6a3KtLC2g" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
78-
79-
<x-warning>
80-
If you make changes to your env file, please remember to reboot the container for the changes to take effect!
81-
</x-warning>
96+
### Pre built archive (Advanced)
8297

83-
### Download pre built archive. (Advanced)
98+
<!-- Video unavailable ATM "private" <iframe width="560" height="315" src="https://www.youtube.com/embed/i04EX7WXTVE" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe> -->
8499

85-
<iframe width="560" height="315" src="https://www.youtube.com/embed/i04EX7WXTVE" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
86-
87-
<p>A prebuilt archive can be downloaded from our GitHub release page <a href="https://github.com/invoiceninja/invoiceninja/releases">here</a>. You will need to download the package named <b>invoiceninja.tar</b></p>
100+
A prebuilt archive can be downloaded from our GitHub release page [here](https://github.com/invoiceninja/invoiceninja/releases). You will need to download the package named **invoiceninja.tar**
88101

89102
<p>Unpack this file into the virtual host directory you have created.</p>
90103

91-
<x-warning>
92-
Please note the release file invoiceninja.tar excludes the .htaccess file, this archive is solely designed for our self host auto updater.
93-
</x-warning>
104+
This option is suited for advanced users. If you prefer a more convenient installation option, consider the [CLI script](#cli-script).
94105

95106
#### File Permissions
96107

@@ -103,7 +114,7 @@ sudo chown -R www-data:www-data /var/www/html
103114
sudo find ./ -type d -exec chmod 755 {} \;
104115
```
105116

106-
##### Web server configuration
117+
#### Web server configuration
107118
<p>A sample NGINX configuration is provided below, it assumes you have PHP 8.1 installed with the PHP FPM extension installed</p>
108119

109120
```bash
@@ -153,41 +164,43 @@ Performance hint!
153164
Enable gzip in your webserver configuration, this will dramatically improve the loading time of the application! Please see the above nginx configuration for a sample of how to load the components of the application with gzip.
154165
</x-warning>
155166
156-
##### Database server configuration
167+
#### Database server configuration
157168
158169
<p>Create a database on your MySQL compatible server and add a user that has full access to the database. Database configuration is out of the scope of this article, more information can be found <a href="https://dev.mysql.com/doc/refman/8.0/en/creating-database.html">here</a></p>
159170
160-
##### Cron configuration
171+
#### Cron configuration
161172
162173
<x-warning>
163174
Ensure you set the scheduler under the web server user i.e. `sudo -u www-data crontab -e`
164175
</x-warning>
165176
166-
<p>Invoice Ninja relies heavily on the Laravel Scheduler, for this to operate it requires that a cron job to be configured, edit your crontab and enter the following record.</p>
177+
Invoice Ninja relies heavily on the Laravel Scheduler, for this to operate it requires that a cron job to be configured, edit your crontab and enter the following record.
167178
168179
```bash
169180
* * * * * cd /path-to-your-project && php artisan schedule:run >> /dev/null 2>&1
170181
```
171182
172-
<p>If you are using shared hosting, then you will need to add an additional parameter to the cron command which looks like this:</p>
183+
If you are using shared hosting, then you will need to add an additional parameter to the cron command which looks like this:
173184
174185
```
175186
* * * * * cd /path/to/root/folder && /usr/bin/php -d register_argc_argv=On artisan schedule:run >> /dev/null 2>&1
176187
```
177188
178189
### Installation from git (Advanced)
179190
180-
<p>For power users installing the app from Github can be done with the following two steps</p>
191+
For power users installing the app from Github can be done with the following two steps
181192
182193
```bash
183194
git clone -b v5-stable --single-branch https://github.com/invoiceninja/invoiceninja.git
184195

185196
composer create-project --no-dev
186197
```
187198
199+
*Be aware, at the time of writing the react frontend is not included by default if you clone this repository. Refer to the configured Github workflow for additional information.*
200+
188201
### Final setup steps
189202
190-
<p>Once you have configured your virtual host, copy the same .env file </p>
203+
Once you have configured your virtual host, copy the same .env file
191204
192205
193206
```bash
@@ -200,12 +213,13 @@ to
200213
.env
201214
202215
```
203-
<p>
204-
then create a database and point your browser to http://your.domain.com/setup - the setup process will check a number of system settings such as PDF generation, database and mail settings and also allow you to configure the first account on the system, click Submit and the app will setup your application and redirect you to the login page</p>
216+
217+
then create a database and point your browser to http://your.domain.com/setup - the setup process will check a number of system settings such as PDF generation, database and mail settings and also allow you to configure the first account on the system, click Submit and the app will setup your application and redirect you to the login page
205218
206219
207220
#### Cron configuration
208-
<p>Invoice Ninja relies heavily on the Laravel Scheduler, for this to operate it requires that a cron job to be configured, edit your crontab and enter the following record</p>
221+
222+
Invoice Ninja relies heavily on the Laravel Scheduler, for this to operate it requires that a cron job to be configured, edit your crontab and enter the following record
209223
210224
<x-warning>
211225
Ensure you set the scheduler under the web server user i.e. `sudo -u www-data crontab -e`

0 commit comments

Comments
 (0)