Girish Ramakrishnan
19348ef205
Fix links in motd
2019-02-07 14:07:30 -08:00
Girish Ramakrishnan
abc8e1c377
improve motd a bit more
2019-02-05 16:58:24 -08:00
Girish Ramakrishnan
de67b6bc0c
better motd
2019-02-05 14:58:44 -08:00
Girish Ramakrishnan
ce1b621488
motd: add message to finish setup
2019-02-05 09:57:42 -08:00
Girish Ramakrishnan
38a4c1aede
Fixup volume management
...
Fixes related to removing directory and directory perms
2019-01-18 15:18:42 -08:00
Girish Ramakrishnan
a7fe35513a
Ubuntu 16 needs MemoryLimit
...
systemd[1]: [/etc/systemd/system/box.service:25] Unknown lvalue 'MemoryMax' in section 'Service'
2019-01-17 09:28:35 -08:00
Girish Ramakrishnan
13c628b58b
backups (tgz): work with a layout
...
this will allow us to place the localstorage directory in an arbitrary
location
2019-01-16 12:52:04 -08:00
Girish Ramakrishnan
e62d417324
Set OOMScoreAdjust to stop box code from being killed
...
OOMScoreAdjust can be set between -1000 and +1000. This value is inherited
and systemd has no easy way to control this for children (box code also
runs as non-root, so it cannot easily set it for the children using
/proc/<pid>/oom_score_adj.
When set to -1000 and the process reaches the MemoryMax, it seems the kernel
does not kill any process in the cgroup and it spins up in high memory. In fact,
'systemctl status <service>' stops displaying child process (but ps does), not sure
what is happenning.
Keeping it -999 means that if a child process consumed a lot of memory, the kernel
will kill something in the group. If the main box itself is killed, systemd will
kill it at all because of KillMode=control-group.
Keeping it -999 also saves box service group being killed relative to other docker
processes (apps and addons).
Fixes #605
2019-01-06 19:16:53 -08:00
Girish Ramakrishnan
6bdd7f7a57
Give more memory to the control group
...
this allows backups to take more memory as part of the systemd group.
the node box code itself runs under little more constraints using
--max_old_space_size=150
2018-12-20 10:44:42 -08:00
Girish Ramakrishnan
4a34703cd3
rework code to enable/disable remote support
...
we had a generic ssh key management api. this was causing issues because
the ssh format is more complicated than what we had implemented. currently,
the only use case we have is to add our ssh key.
Fixes #600
2018-12-19 13:35:20 -08:00
Girish Ramakrishnan
434525943c
move appconfig.ejs
2018-12-13 21:53:31 -08:00
Girish Ramakrishnan
7c1ef143f9
Add unbound service
2018-12-02 19:38:34 -08:00
Girish Ramakrishnan
df927eae74
move backupupload.js to scripts
...
it is just a sudo helper
2018-11-29 23:30:56 -08:00
Girish Ramakrishnan
a2da9bea58
backup: use ipc for communicating with upload process
2018-11-26 15:21:48 -08:00
Girish Ramakrishnan
6cd8e769be
remove all uses of sudoSync
2018-11-25 14:43:29 -08:00
Johannes Zellner
161a8fe2bf
Make docker restartable
2018-11-24 22:12:28 +01:00
Girish Ramakrishnan
1b1945e1f5
Move out graphite from port 8000
...
Port 8000 is used by esxi management service (!)
2018-11-17 19:14:21 -08:00
Johannes Zellner
9d40cffabe
Add logrotate config for box logs
2018-11-16 13:14:59 +01:00
Johannes Zellner
ac25477cd7
Ensure we prefix all output with a timestamp
...
note that debug() already does this now on its own in the same format
it does not use console.log but process.stderr
2018-11-16 13:02:37 +01:00
Johannes Zellner
59b86aa090
Stop logging box to journald
2018-11-16 12:15:38 +01:00
Girish Ramakrishnan
6abd48d480
rename backuptask to backupupload
2018-11-15 12:00:51 -08:00
Girish Ramakrishnan
2c60614d4b
remove special rm script for redis
2018-10-15 16:14:16 -07:00
Girish Ramakrishnan
816fa94555
Upgrade the db addons using dumps when major version changes
2018-10-15 16:14:13 -07:00
Girish Ramakrishnan
23b9854c57
Use REST API instead of volumes for redis
2018-09-18 13:09:24 -07:00
Girish Ramakrishnan
a46e208c63
Use docker volumes instead of bind mount for app data
2018-09-13 15:35:41 -07:00
Johannes Zellner
9bac7e8124
Move the comment where it belongs
2018-08-22 11:02:06 +02:00
Girish Ramakrishnan
589602cdb0
Add note
2018-07-25 08:29:39 -07:00
Girish Ramakrishnan
7654f36e23
Do temporary redirect instead
...
Permanent redirect can be cached forever in the browser which
means that changing redirect settings appear to not work.
2018-07-15 17:43:36 -07:00
Johannes Zellner
3d0da34960
Create nginx configs for app redirects
2018-06-29 23:14:06 +02:00
Girish Ramakrishnan
0fc4f4bbff
Explicitly pass port and logdir
2018-06-11 22:53:12 -07:00
Girish Ramakrishnan
0b82146b3e
Install cloudron-syslog service file from box repo
2018-06-11 22:42:49 -07:00
Johannes Zellner
2a475c1199
Add logrotate for app and addon logs
2018-06-06 17:36:48 +02:00
Johannes Zellner
ddaa52163b
Update ssl ciphers according to mozillas recommendation
2018-04-11 15:15:29 +02:00
Johannes Zellner
799c1ba05d
Improve on the csp header restriction
2018-04-11 13:00:08 +02:00
Johannes Zellner
838838b90d
nginx would drop other headers if add_header is defined in the location section
2018-04-11 12:29:57 +02:00
Johannes Zellner
573d0e993e
Add CSP header for dashboard
2018-04-10 17:59:06 +02:00
Girish Ramakrishnan
e33ebe7304
Revert "mysql: increase max_allowed_packet"
...
This reverts commit 9123ea7016 .
Not needed. This was a db corruption issue
2018-03-22 21:49:08 -07:00
Girish Ramakrishnan
9123ea7016
mysql: increase max_allowed_packet
...
some cloudrons are reporting some errors after 2.0. maybe all those
additional joins/fields we put in is causing this
2018-03-21 17:52:22 -07:00
Girish Ramakrishnan
a07c4423c4
Rename webadmin to dashboard
...
The box nginx config has to be re-generated but this is always
done at box restart time
2018-03-15 14:14:23 -07:00
Johannes Zellner
35d2755cfb
Remove splashpage logic
2018-01-31 09:24:43 +01:00
Girish Ramakrishnan
ac94a0b7f2
Add route to restore box from backup
...
Part of #439
2017-11-22 23:08:59 -08:00
Girish Ramakrishnan
014b77b7aa
Fix LE cert renewal failures
...
LE contacts the server by hostname and not by IP. This means that
when installing and reconfiguring the app it hits the default_server
route since nginx configs for the app are not generated at.
When doing in the daily cert renew, the nginx configs exist and we
are unable to renew the certs.
2017-11-02 11:43:43 -07:00
Girish Ramakrishnan
6dd70c0ef2
acme challenges must be answered by default_server
...
The challenge must be answered even before app nginx config
is available.
2017-10-28 23:39:03 -07:00
Girish Ramakrishnan
3dedda32d4
Configure http server to only listen on known vhosts/IP
...
For the rest it returns 404
Fixes #446
2017-10-27 00:10:50 -07:00
Johannes Zellner
8b341e2bf8
Only make nginx listen on ipv6 connections if it is supported by the system
...
Could not decide on the ejs formatting, never nice for me
2017-09-29 19:43:37 +02:00
Girish Ramakrishnan
e39a5c8872
preserve env in backuptask.js
2017-09-22 11:19:44 -07:00
Johannes Zellner
e50e0f730b
Make nginx listen on :: for ipv6
2017-09-20 16:33:25 +02:00
Girish Ramakrishnan
84649b9471
Bring back backuptask
...
This is required for various small reasons:
* dir iteration with a way to pass messagein back to the upload() easily
* can be killed independently of box code
* allows us to run sync (blocking) commands in the upload logic
2017-09-19 12:32:38 -07:00
Girish Ramakrishnan
6525a467a2
Rework backuptask into tar.js
...
This makes it easy to integrate another backup strategy
as the next step
2017-09-17 18:50:26 -07:00
Girish Ramakrishnan
c8750a3bed
merge the logrotate scripts
2017-09-12 22:03:24 -07:00