Commit Graph

4460 Commits

Author SHA1 Message Date
Johannes Zellner
c8e99e351e Update the selfhosting installation docs to reflect the dns setup changes 2017-01-13 15:15:25 +01:00
Girish Ramakrishnan
fb56237122 0.94.1 changes 2017-01-12 19:28:27 -08:00
Girish Ramakrishnan
89152fabde use latest test image 2017-01-12 19:28:27 -08:00
Girish Ramakrishnan
726463d497 use le-staging in dev for better testing 2017-01-12 19:28:27 -08:00
Girish Ramakrishnan
055e41ac90 Make unbound reply on cloudron network
Because of the docker upgrade, dnsbl queries are failing again
since we are not using the unbound server from the containers.

For some reason, docker cannot query 127.0.0.1 (https://github.com/docker/docker/issues/14627).

Make unbound listed on the cloudron network and let docker proxy
DNS calls to unbound (docker always use the embedded DNS server
when using UDN).

See also #130
2017-01-12 19:28:23 -08:00
Girish Ramakrishnan
878878e5e4 Bump mail container for testing 2017-01-12 12:04:24 -08:00
Girish Ramakrishnan
7742c8a58e Remove unused function 2017-01-12 11:50:59 -08:00
Girish Ramakrishnan
04476999f7 Fix grammar 2017-01-12 11:48:03 -08:00
Girish Ramakrishnan
5bff7ebaa1 remove dead comment 2017-01-12 11:46:52 -08:00
Girish Ramakrishnan
44742ea3ae Fix bug where cloudron cannot be setup if initial dns credentials were invalid
To reproduce:
* https://ip
* provide invalid dns creds. at this point, config.fqdn gets set already
* cannot setup anymore
2017-01-12 11:46:52 -08:00
Girish Ramakrishnan
d6ea7fc3a0 Move setupDns to cloudron.js 2017-01-12 11:46:49 -08:00
Girish Ramakrishnan
2b49cde2c2 cloudron-setup: validate tlsProvider 2017-01-12 10:31:54 -08:00
Johannes Zellner
1008981306 Adapt to new notification library version
the notification template is now in the html pages itself
2017-01-12 16:00:57 +01:00
Johannes Zellner
146f3ad00e Do not show 0 progress in update
If the initial app takes very long to backup, do not show 0 progress for
a long time
2017-01-12 16:00:57 +01:00
Johannes Zellner
5219eff190 Remove 'app at' for app backup message 2017-01-12 16:00:57 +01:00
Johannes Zellner
abfd7b8aea Update angular notification library to support maxCount 2017-01-12 16:00:57 +01:00
Johannes Zellner
d98f64094e Set the correct progress percentage 2017-01-12 16:00:56 +01:00
Johannes Zellner
a8d254738e Only set the update page title to Cloudron 2017-01-12 16:00:56 +01:00
Johannes Zellner
1c9f2495e3 Show the detailed backup progress during update
Fixes #157
2017-01-12 16:00:34 +01:00
Johannes Zellner
aa4d95f352 Remove unused node module showdown 2017-01-12 13:13:37 +01:00
Johannes Zellner
558093eab1 Remove now unused mailer.boxUpdateAvailable() 2017-01-12 13:11:18 +01:00
Johannes Zellner
865b041474 Do not send box update emails to admins
Fixes #160
2017-01-12 13:09:12 +01:00
Johannes Zellner
1888319313 Send altDomain as Host header if it is set
At least nextcloud will respond with 400 if the Host header is not
matching
2017-01-12 10:45:16 +01:00
Girish Ramakrishnan
0be7679619 Hold the docker package
One idea was to use docker binary packages. However, docker binaries
are statically linked and are incompatible with devicemapper.

See https://github.com/docker/docker/issues/14035 for more info.

Holding will let the user turn on automatic updates for non-security
packages as well.

Fixes #183
2017-01-12 01:09:19 -08:00
Girish Ramakrishnan
bbef6c2bc2 Fix docker storage driver detection
When docker is not passed the --storage-driver option, it tries to
auto detect the storage driver. Roughly:
1. If existing storage paths like /var/lib/docker/aufs exist, it will
   choose that driver.

2. It has a priority list of drivers to scan in order (driver.go)
   As it stands the ordering is aufs, btrfs and then devicemapper.

3. Docker will attempt to "init" each driver. aufs, for example,
   tests for insmod'ing aufs and also looks into /proc/filesystems.

The fact that we installed aufs-tools and linux drivers (for aufs
driver) was a programming error since we want docker to use devicemapper.

However, what is curious is why docker still ended up choosing devicemapper
despite having all aufs requirements (as we do not pass --storage-driver explicitly).

The answer is that "apt-get install aufs-tool linux-image-* docker-engine"
can install packages in any order! This means there is a race on how docker
chooses the storage engine. In most cases, since linux-image-* is a big package,
docker gets to install first and ends up using devicemapper since aufs module is not found yet.
For some people, linux-image-* possibly installs first and thus docker
chooses aufs!

Mystery solved.

Part of #183
2017-01-12 01:08:22 -08:00
Girish Ramakrishnan
be59267747 Enable unattended upgrades
This is usually installed and enabled by default

https://help.ubuntu.com/community/AutomaticSecurityUpdates

Note that automatic reboot is not enabled. Not clear if we should be.

Part of #183
2017-01-11 22:36:51 -08:00
Girish Ramakrishnan
b4477d26b7 Reload the docker service file 2017-01-11 15:40:16 -08:00
Girish Ramakrishnan
ce0afb3d80 Explicitly specify the storage driver as devicemapper
For reasons unknown, the images build by the buildbot (which currently
uses btrfs), does not work with devicemapper.

Existing cloudrons with aufs will not be affected because docker will
just ignore it.

devmapper: Base device already exists and has filesystem xfs on it. User specified filesystem will be ignored.

Existing AUFS users can move to devicemapper either by restoring to
a new cloudron (recommended) OR
* systemctl stop box
* systemctl stop docker
* rm -rf /var/lib/docker
* Edit /home/yellowtent/data/INFRA_VERSION. Change the "version" field to "1"
* systemctl start docker
* systemctl start box # this will download images all over

Fixes #182
2017-01-11 14:53:11 -08:00
Johannes Zellner
0b5cd304ea We also don't need to prefix with my. when using the adminFqdn 2017-01-11 23:09:06 +01:00
Girish Ramakrishnan
e54ad97fa7 cloudron-setup: set the apiServerOrigin for --env 2017-01-11 12:36:01 -08:00
Girish Ramakrishnan
66960ea785 cloudron-setup: Add --env flag 2017-01-10 20:42:24 -08:00
Girish Ramakrishnan
72dd3026ca collect docker info output
this has information like the storage driver
2017-01-10 20:42:24 -08:00
Girish Ramakrishnan
4c719de86c restart docker only if config changed v0.94.0 2017-01-10 18:50:21 -08:00
Girish Ramakrishnan
c7a0b017b4 Fix crash 2017-01-10 18:50:21 -08:00
Johannes Zellner
91c931b53c Revert "Remove broken external domain validation"
This reverts commit 9b1b833fac.
2017-01-11 03:46:41 +01:00
Girish Ramakrishnan
6f2b2adca9 Enable apparmor explicitly 2017-01-10 18:15:10 -08:00
Girish Ramakrishnan
3176bc1afa Fix failing tests 2017-01-10 16:54:15 -08:00
Girish Ramakrishnan
b929adf2dd Fix migration 2017-01-10 16:23:01 -08:00
Girish Ramakrishnan
f3d3b31bed Fix error return type 2017-01-10 16:16:42 -08:00
Girish Ramakrishnan
f17eaaf025 Add TODO note 2017-01-10 16:16:37 -08:00
Girish Ramakrishnan
80d65acd0d Set the domain only during dns setup
If we change the domain when dns settings are changed, then migration
fails because we callout to appstore API via the domain (for example,
backup url call will fail because it uses the new domain name).
2017-01-10 16:16:32 -08:00
Girish Ramakrishnan
ba02d333d1 remove unused requires 2017-01-10 16:16:25 -08:00
Johannes Zellner
9b9d30c092 Remove commented out section of the nginx.conf 2017-01-11 00:09:51 +01:00
Johannes Zellner
d47de31744 Rename nakeddomain.html to noapp.html 2017-01-11 00:08:13 +01:00
Johannes Zellner
edc7efae5f Do not overwrite the provider previously set 2017-01-11 00:02:19 +01:00
Johannes Zellner
18007be9e1 Also use adminFqdn in setup.js 2017-01-10 23:58:28 +01:00
Johannes Zellner
d68ae4866c The adminFqdn already has the my. part 2017-01-10 23:58:28 +01:00
Girish Ramakrishnan
f4b635a169 Fix error type 2017-01-10 14:21:36 -08:00
Johannes Zellner
d674d72508 Add missing https:// for adminFqdn 2017-01-10 22:54:45 +01:00
Johannes Zellner
6ee76f8ee4 No need for my. my- magic anymore 2017-01-10 22:54:45 +01:00