Skip to content
Snippets Groups Projects
Commit ce811711 authored by Michiel de Jong's avatar Michiel de Jong
Browse files

update bash-and-Docker instructions

parent 0ee8bf99
No related branches found
No related tags found
No related merge requests found
...@@ -3,34 +3,36 @@ ...@@ -3,34 +3,36 @@
## WARNING: Still a work-in-process ## WARNING: Still a work-in-process
Given that CoreOS is not available everywhere, and the Ubuntu 14.10 setup with etcdctl inside a Docker instance still has some problems, Given that CoreOS is not available everywhere, and the Ubuntu 14.10 setup with etcdctl inside a Docker instance still has some problems,
I'll try if I can run all our services (postfix-forwarder, haproxy, and the various web backend containers) on an off-the-shelf Ubuntu 14.04 server. Here's what I did to prepare the server: I'll try if I can run all our services (postfix-forwarder, haproxy, and the various web backend containers) on an off-the-shelf Ubuntu 14.04 server. Here's what I did to prepare the server (not all servers support Docker, because of kernel modules etcetera; I used Ubuntu 12.04-64 at Gandi, and gave it 5GB of disk space and 512Mb of RAM):
````bash ````bash
apt-get update && apt-get -y upgrade && apt-get -y dist-upgrade apt-get update && apt-get -y upgrade
apt-get -y install unattended-upgrades apt-get -y install unattended-upgrades curl git
dpkg-reconfigure -plow unattended-upgrades dpkg-reconfigure -plow unattended-upgrades
# set unattended upgrades to 'Yes' # set unattended upgrades to 'Yes'
apt-get -y install docker.io curl -s https://get.docker.io/ubuntu/ | sh
ssh-keygen -t rsa ssh-keygen -t rsa
```` ````
Then I added the .ssh/id_rsa.pub to .ssh/authorized_keys at both backup server accounts, and ran: Then I added the .ssh/id_rsa.pub to .ssh/authorized_keys at both backup server accounts, and ran:
```` ````
mkdir -p /data
cd /data
git clone git@bu25:postfix git clone git@bu25:postfix
cd postfix; ./runme.sh; cd ..
git clone git@bu25:haproxy git clone git@bu25:haproxy
docker run -d -v /data/haproxy:/etc/haproxy -p 80:80 -p 443:443 indiehosters/haproxy cd haproxy; ./runme.sh; cd ..
docker run -d --name postfix-forwarder -v /data/postfix:/data -p 25:25 indiehosters/postfix-forwarder
```` ````
TODO: document how to create and update such postfix and haproxy migration archives.
And then for each domain I host: And then for each domain I host:
```` ````
cd /data cd /data
git clone git@bu25:michielbdejong.com git clone git@bu25:michielbdejong.com
docker run -d --name michielbdejong.com -v /data/michielbdejong.com:/data indiehosters/lamp-git cd michielbdejong.com; ./runme.sh --behind-haproxy; cd ..
```` ````
Now the only thing you need to do is to get each backend IP address from `docker inspect michielbdejong.com` and edit `/data/runtime/haproxy/haproxy.cfg` with the correct IP address. TODO: document how to create and update such web app migration archives.
Now the only thing you need to do is to get each backend IP address from `docker inspect michielbdejong.com` and edit `/data/haproxy/haproxy.cfg` with the correct IP address (the idea of the `--behind-haproxy` flag would be to automate that; note that the migration format here does not include the postfix-forwarder, DNS, and DNR data).
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment