Commit Graph

96 Commits

Author SHA1 Message Date
Girish Ramakrishnan
804947f039 use dir mount instead of file mount
file mounting is fraught with problems wrt change notifications.

first, we must be carefule that the inode does not change.

second, changes outside container do not result in fs events inside the container.
haraka cache settings files and relies on fs events. So, even
though the file gets updated inside the container, haraka doesn't
see it.

https://github.com/docker/docker/issues/15793
2017-01-17 23:59:23 -08:00
Girish Ramakrishnan
d45927cdf4 unbound: listen on 0.0.0.0 2017-01-13 15:22:54 -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
Johannes Zellner
1c9f2495e3 Show the detailed backup progress during update
Fixes #157
2017-01-12 16:00:34 +01: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
Girish Ramakrishnan
4c719de86c restart docker only if config changed 2017-01-10 18:50:21 -08:00
Girish Ramakrishnan
6f2b2adca9 Enable apparmor explicitly 2017-01-10 18:15:10 -08:00
Girish Ramakrishnan
26ed331f8e Add default clients in clients.js 2017-01-09 15:41:29 -08:00
Girish Ramakrishnan
cc9904c8c7 Move nginx config and cert generation to box code 2017-01-06 10:23:10 +01:00
Johannes Zellner
2d6d8a7ea8 Create fallback certs only if fqdn is already set 2017-01-05 16:29:10 +01:00
Johannes Zellner
5b5ed9e043 Always create box/mail/dkim folder 2017-01-05 16:15:00 +01:00
Johannes Zellner
d9865f9b0f Allow box to startup without fqdn 2017-01-05 14:02:04 +01:00
Girish Ramakrishnan
c8a9412995 suppress error message 2016-12-30 14:23:16 -08:00
Girish Ramakrishnan
90c1fd4c31 rename the service to cloudron-resize-fs 2016-12-30 11:27:00 -08:00
Girish Ramakrishnan
fad6221750 Run cloudron-system-setup before box 2016-12-30 11:23:53 -08:00
Girish Ramakrishnan
decbfe0505 More start.sh cleanup 2016-12-29 14:35:48 -08:00
Girish Ramakrishnan
df2878bc2e Prettify start.sh 2016-12-29 14:22:42 -08:00
Girish Ramakrishnan
7de94fff1b Merge container logic into start.sh
This whole container thinking is over-engineered and we will get to
it if and when we need to.
2016-12-29 12:01:59 -08:00
Girish Ramakrishnan
01126aaeea move ssh configuration to container.sh
Note: appstore requires to be fixed to start the provisioning on port 22

Part of #152
2016-12-28 08:57:13 -08:00
Girish Ramakrishnan
c8a04f8707 remove code that stops nginx 2016-10-24 14:41:26 -07:00
Johannes
595787a898 Add missing 'then' 2016-10-24 16:46:14 +02:00
Girish Ramakrishnan
86a31b8f5a start nginx properly 2016-10-21 16:43:40 -07:00
Girish Ramakrishnan
1244a73a19 run the install web ui on port 80 2016-10-21 16:04:08 -07:00
Johannes Zellner
db55a7ad3c Create fallback cert if not passed in via user data 2016-10-21 10:28:22 -07:00
Girish Ramakrishnan
219bd69e63 parse and save isDemo provision parameter 2016-08-31 22:03:46 -07:00
Girish Ramakrishnan
3ba5bd836b use cloudron.conf to determine if this is an update
see also d60b386bca
2016-08-25 10:32:58 -07:00
Girish Ramakrishnan
3bd9fcae6a fix dkim dir perms 2016-08-13 00:23:07 -07:00
Girish Ramakrishnan
020ad746a0 change ownership of box directory 2016-08-12 23:55:20 -07:00
Girish Ramakrishnan
b049989eb1 do not change ownership of mail data when updating cloudron
the mail container is still running and changing the ownership behind it's
back causes the mail container to be very upset.
2016-08-12 23:36:41 -07:00
Johannes Zellner
8702b4320d Wait for all mysql jobs to be finished 2016-08-04 14:06:52 +02:00
Johannes Zellner
6b4675cca1 Remove the ec2 swappiness setting
This revealed mixed results, overall the burstmode ec2
instances are simply a bit underpowered
2016-08-04 10:56:26 +02:00
Girish Ramakrishnan
42fda25718 use systemctl instead of upstart service 2016-08-02 18:45:20 -07:00
Johannes Zellner
82e8c8cef2 Only adjust swapiness for ec2
On DO the disk I/O seems to be much better so this is not required
2016-07-17 18:54:27 +02:00
Johannes Zellner
3300c6b47a Make the system use swap only when needed
The default swappiness is 60 on ubuntu. This sets the tendency
to swap out memory pages to be more frequent, which in our case
means swapping out to networked disks and increase the cpu load
a lot, which is especially bad on EC2
2016-07-15 14:07:02 +02:00
Johannes Zellner
66049a9e2d Support x-frame-options in appconfig.ejs template 2016-07-14 16:28:59 +02:00
Johannes Zellner
e422357670 Set the correct hostname in start.sh 2016-07-04 10:41:54 +02:00
Johannes Zellner
0160c12965 Allow to distinguish between built-in auth clients and external ones 2016-06-09 15:35:00 +02:00
Johannes Zellner
4776a005a5 Remove redundant client TYPE_*s 2016-06-08 14:09:06 +02:00
Johannes Zellner
a69cd204d6 Handle sdk and cli clients just like the webadmin 2016-06-08 11:33:08 +02:00
Johannes Zellner
2676658b5d Add auth client cid-sdk and cid-cli 2016-06-08 11:20:06 +02:00
Johannes Zellner
a0227b6043 Remove now unused localhost test client
We can now simply use the regular APIs to do local development against a Cloudron
2016-06-07 16:03:50 +02:00
Girish Ramakrishnan
b077223e58 fix scope name 2016-06-02 17:49:54 -07:00
Girish Ramakrishnan
119e095710 actually change ownership 2016-05-30 15:51:52 -07:00
Girish Ramakrishnan
5df3a41988 INFRA_VERSION may not exist 2016-05-30 14:48:41 -07:00
Girish Ramakrishnan
a34b611e20 make INFRA_VERSION writable by yellowtent user 2016-05-30 12:52:39 -07:00
Girish Ramakrishnan
2347a7ced2 admin email is a platform property 2016-05-24 16:36:56 -07:00
Girish Ramakrishnan
0e655cadb0 generate dkim keys before dns setup
Two things require DKIM keys
1. the mail addon
2. the DNS TXT record
2016-05-05 21:15:10 -07:00
Girish Ramakrishnan
b4c15b1719 Let the box code initialize the infrastructure
This is done because:
1. The box code can install certs for addons (like mail addon) when
   required.

2. The box code initialize/teardown addons on demand. This is not planned
   currently.
2016-05-04 15:54:21 -07:00
Girish Ramakrishnan
91a016ee91 Change the admin email to no-reply 2016-04-14 19:56:54 -07:00