Skip to content

Commit

Permalink
Add NPMplus as community-container (#3520)
Browse files Browse the repository at this point in the history
Co-authored-by: Simon L <szaimen@e.mail.de>
  • Loading branch information
Zoey2936 and szaimen authored Oct 16, 2023
1 parent df9fa7e commit a846b46
Show file tree
Hide file tree
Showing 3 changed files with 55 additions and 0 deletions.
1 change: 1 addition & 0 deletions community-containers/caddy/readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
This container bundles caddy and auto-configures it for you. It also covers https://github.com/nextcloud/all-in-one/tree/main/community-containers/vaultwarden by listening on `bw.$NC_DOMAIN`, if installed.

### Notes
- This container is incompatible with the [npmplus](https://github.com/nextcloud/all-in-one/tree/main/community-containers/npmplus) community container. So make sure that you do not enable both at the same time!
- Make sure that no other service is using port 443 on your host as otherwise the containers will fail to start. You can check this with `sudo netstat -tulpn | grep 443` before installing AIO.
- If you want to use this with https://github.com/nextcloud/all-in-one/tree/main/community-containers/vaultwarden, make sure that you point `bw.your-nc-domain.com` to your server using a cname record so that caddy can get a certificate automatically for vaultwarden.
- After the container was started the first time, you should see a new `nextcloud-aio-caddy` folder and inside there an `allowed-countries.txt` file when you open the files app with the default `admin` user. In there you can adjust the allowed country codes for caddy by adding them to the first line, e.g. `IT FR` would allow access from italy and france. Private ip-ranges are always allowed. Additionally, in order to activate this config, you need to get an account at https://dev.maxmind.com/geoip/geolite2-free-geolocation-data and download the `GeoLite2-Country.mmdb` and upload it with this exact name into the `nextcloud-aio-caddy` folder. Afterwards restart all containers from the AIO interface and your new config should be active!
Expand Down
32 changes: 32 additions & 0 deletions community-containers/npmplus/npmplus.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
{
"aio_services_v1": [
{
"container_name": "nextcloud-aio-npmplus",
"display_name": "NPMplus",
"documentation": "https://github.com/nextcloud/all-in-one/tree/main/community-containers/npmplus",
"image": "zoeyvid/npmplus",
"image_tag": "latest",
"internal_port": "host",
"restart": "unless-stopped",
"environment": [
"TZ=%TIMEZONE%",
"NC_AIO=true",
"NC_DOMAIN=%NC_DOMAIN%"
],
"volumes": [
{
"source": "nextcloud_aio_npmplus",
"destination": "/data",
"writeable": true
}
],
"backup_volumes": [
"nextcloud_aio_npmplus"
],
"aio_variables": [
"apache_ip_binding=127.0.0.1",
"apache_port=11000"
]
}
]
}
22 changes: 22 additions & 0 deletions community-containers/npmplus/readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
## NPMplus
This container contains a fork of the Nginx Proxy Manager, which is a WebUI for nginx. It will also automatically create a config and cert for AIO.

### Notes
- This container is incompatible with the [caddy](https://github.com/nextcloud/all-in-one/tree/main/community-containers/caddy) community container. So make sure that you do not enable both at the same time!
- Only works on linux since it uses network mode host
- You can ignore the NPM configuration of the reverse-proxy.md. The NPMplus fork already contains the changes of the advanced tab.
- Make sure that no other service is using port `443 (tcp/upd)` or `81 (tcp)` on your host as otherwise the containers will fail to start. You can check this with `sudo netstat -tulpn | grep "443\|81"` before installing AIO.
- Please change the default login data first, after you can read inside the logs that the default config for AIO is created and there are no errors.
- After the container was started the first time, please check the logs for errors. Then you can open NPMplus on `https://<ip>:81` and change the password.
- The default password is `iArhP1j7p1P6TA92FA2FMbbUGYqwcYzxC4AVEe12Wbi94FY9gNN62aKyF1shrvG4NycjjX9KfmDQiwkLZH1ZDR9xMjiG2QmoHXi` and the default email is `admin@example.com`
- If you want to use NPMplus behind a domain and outside localhost just create a new proxy host inside the NPMplus which proxies to `https`, `127.0.0.1` and port `81` - all other settings should be the same as for the AIO host.
- If you want to set env options from this [compose.yaml](https://github.com/ZoeyVid/NPMplus/blob/develop/compose.yaml), please set them inside the `.env` file which you can find in the `nextcloud_aio_npmplus` volume
- The data (certs, configs, etc.) of NPMplus will be automatically included in AIOs backup solution!
- **Important:** you always need to enable https for your hosts, since `DISABLE_HTTP` is set to true
- See https://github.com/nextcloud/all-in-one/tree/main/community-containers how to add it to the AIO stack

### Repository and Documentation
https://github.com/ZoeyVid/NPMplus

### Maintainer
https://github.com/Zoey2936

0 comments on commit a846b46

Please sign in to comment.