You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: docs/setup/README.md
+49-76
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,44 @@
1
1
# Full Setup Instructions
2
2
3
-
## MySQL Database
3
+
## Running the App
4
+
5
+
Create a `docker-compose.yml` file:
6
+
7
+
```yml
8
+
version: "3"
9
+
services:
10
+
app:
11
+
image: 'jc21/nginx-proxy-manager:latest'
12
+
restart: unless-stopped
13
+
ports:
14
+
# These ports are in format <host-port>:<container-port>
15
+
- '80:80'# Public HTTP Port
16
+
- '443:443'# Public HTTPS Port
17
+
- '81:81'# Admin Web Port
18
+
# Add any other Stream port you want to expose
19
+
# - '21:21' # FTP
20
+
21
+
# Uncomment the next line if you uncomment anything in the section
22
+
# environment:
23
+
# Uncomment this if you want to change the location of
24
+
# the SQLite DB file within the container
25
+
# DB_SQLITE_FILE: "/data/database.sqlite"
26
+
27
+
# Uncomment this if IPv6 is not enabled on your host
28
+
# DISABLE_IPV6: 'true'
29
+
30
+
volumes:
31
+
- ./data:/data
32
+
- ./letsencrypt:/etc/letsencrypt
33
+
```
34
+
35
+
Then:
36
+
37
+
```bash
38
+
docker-compose up -d
39
+
```
40
+
41
+
## Using MySQL / MariaDB Database
4
42
5
43
If you opt for the MySQL configuration you will have to provide the database server yourself. You can also use MariaDB. Here are the minimum supported versions:
6
44
@@ -10,15 +48,7 @@ If you opt for the MySQL configuration you will have to provide the database ser
10
48
It's easy to use another docker container for your database also and link it as part of the docker stack, so that's what the following examples
11
49
are going to use.
12
50
13
-
::: warning
14
-
15
-
When using a `mariadb` database, the NPM configuration file should still use the `mysql` engine!
16
-
17
-
:::
18
-
19
-
## Running the App
20
-
21
-
Via `docker-compose`:
51
+
Here is an example of what your `docker-compose.yml` will look like when using a MariaDB container:
22
52
23
53
```yml
24
54
version: "3"
@@ -27,31 +57,26 @@ services:
27
57
image: 'jc21/nginx-proxy-manager:latest'
28
58
restart: unless-stopped
29
59
ports:
30
-
# Public HTTP Port:
31
-
- '80:80'
32
-
# Public HTTPS Port:
33
-
- '443:443'
34
-
# Admin Web Port:
35
-
- '81:81'
60
+
# These ports are in format <host-port>:<container-port>
61
+
- '80:80'# Public HTTP Port
62
+
- '443:443'# Public HTTPS Port
63
+
- '81:81'# Admin Web Port
36
64
# Add any other Stream port you want to expose
37
65
# - '21:21' # FTP
38
66
environment:
39
-
# These are the settings to access your db
40
67
DB_MYSQL_HOST: "db"
41
68
DB_MYSQL_PORT: 3306
42
69
DB_MYSQL_USER: "npm"
43
70
DB_MYSQL_PASSWORD: "npm"
44
71
DB_MYSQL_NAME: "npm"
45
-
# If you would rather use Sqlite uncomment this
46
-
# and remove all DB_MYSQL_* lines above
47
-
# DB_SQLITE_FILE: "/data/database.sqlite"
48
72
# Uncomment this if IPv6 is not enabled on your host
49
73
# DISABLE_IPV6: 'true'
50
74
volumes:
51
75
- ./data:/data
52
76
- ./letsencrypt:/etc/letsencrypt
53
77
depends_on:
54
78
- db
79
+
55
80
db:
56
81
image: 'jc21/mariadb-aria:latest'
57
82
restart: unless-stopped
@@ -64,13 +89,11 @@ services:
64
89
- ./data/mysql:/var/lib/mysql
65
90
```
66
91
67
-
_Please note, that `DB_MYSQL_*` environment variables will take precedent over `DB_SQLITE_*` variables. So if you keep the MySQL variables, you will not be able to use Sqlite._
92
+
::: warning
68
93
69
-
Then:
94
+
Please note, that `DB_MYSQL_*` environment variables will take precedent over `DB_SQLITE_*` variables. So if you keep the MySQL variables, you will not be able to use SQLite.
70
95
71
-
```bash
72
-
docker-compose up -d
73
-
```
96
+
:::
74
97
75
98
## Running on Raspberry PI / ARM devices
76
99
@@ -89,57 +112,7 @@ for a list of supported architectures and if you want one that doesn't exist,
89
112
Also, if you don't know how to already, follow [this guide to install docker and docker-compose](https://manre-universe.net/how-to-run-docker-and-docker-compose-on-raspbian/)
90
113
on Raspbian.
91
114
92
-
Via `docker-compose`:
93
-
94
-
```yml
95
-
version: "3"
96
-
services:
97
-
app:
98
-
image: 'jc21/nginx-proxy-manager:latest'
99
-
restart: unless-stopped
100
-
ports:
101
-
# Public HTTP Port:
102
-
- '80:80'
103
-
# Public HTTPS Port:
104
-
- '443:443'
105
-
# Admin Web Port:
106
-
- '81:81'
107
-
environment:
108
-
# These are the settings to access your db
109
-
DB_MYSQL_HOST: "db"
110
-
DB_MYSQL_PORT: 3306
111
-
DB_MYSQL_USER: "changeuser"
112
-
DB_MYSQL_PASSWORD: "changepass"
113
-
DB_MYSQL_NAME: "npm"
114
-
# If you would rather use Sqlite uncomment this
115
-
# and remove all DB_MYSQL_* lines above
116
-
# DB_SQLITE_FILE: "/data/database.sqlite"
117
-
# Uncomment this if IPv6 is not enabled on your host
118
-
# DISABLE_IPV6: 'true'
119
-
volumes:
120
-
- ./data/nginx-proxy-manager:/data
121
-
- ./letsencrypt:/etc/letsencrypt
122
-
depends_on:
123
-
- db
124
-
db:
125
-
image: yobasystems/alpine-mariadb:latest
126
-
restart: unless-stopped
127
-
environment:
128
-
MYSQL_ROOT_PASSWORD: "changeme"
129
-
MYSQL_DATABASE: "npm"
130
-
MYSQL_USER: "changeuser"
131
-
MYSQL_PASSWORD: "changepass"
132
-
volumes:
133
-
- ./data/mariadb:/var/lib/mysql
134
-
```
135
-
136
-
_Please note, that `DB_MYSQL_*` environment variables will take precedent over `DB_SQLITE_*` var>
137
-
138
-
Then:
139
-
140
-
```bash
141
-
docker-compose up -d
142
-
```
115
+
Please note that the `jc21/mariadb-aria:latest` image might have some problems on some ARM devices, if you want a separate database container, use the `yobasystems/alpine-mariadb:latest` image.
0 commit comments