From 918191825d0243ff23a4927248f4218d8c8e8fc7 Mon Sep 17 00:00:00 2001 From: Fergal Moran Date: Tue, 2 Feb 2016 20:15:14 +0000 Subject: [PATCH 1/3] docker-compose --- docker-compose.yml | 46 ++++++++++++++++++++++++---------------------- 1 file changed, 24 insertions(+), 22 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index 81edb78..9145277 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -25,17 +25,17 @@ data: - /var/lib/postgresql command: /bin/true -celery: - image: fergalmoran/dss.api - env_file: - - ./api_env - volumes_from: - - api - links: - - "postgres:postgres" - - "redis:redis" - - "rabbitmq:rabbitmq" - command: ./run_celery.sh +icecast: + build: ./icecast/ + volumes: + - ./logs:/var/log/icecast2 + - /etc/localtime:/etc/localtime:ro + environment: + - ICECAST_SOURCE_PASSWORD=RDzNlgqmj67vk + - ICECAST_ADMIN_PASSWORD=CrVuP5evoJZ0 + - ICECAST_RELAY_PASSWORD=9PmUbI1mLne9o + ports: + - 8000:8000 api: image: fergalmoran/dss.api @@ -52,6 +52,18 @@ api: - "rabbitmq:rabbitmq" command: ./run_web.sh +celery: + image: fergalmoran/dss.api + env_file: + - ./api_env + volumes_from: + - api + links: + - "postgres:postgres" + - "redis:redis" + - "rabbitmq:rabbitmq" + command: ./run_celery.sh + web: image: fergalmoran/dss.web env_file: @@ -61,17 +73,7 @@ web: - "redis:redis" ports: - "8080:8080" -icecast: - build: ./icecast/ - volumes: - - ./logs:/var/log/icecast2 - - /etc/localtime:/etc/localtime:ro - environment: - - ICECAST_SOURCE_PASSWORD=RDzNlgqmj67vk - - ICECAST_ADMIN_PASSWORD=CrVuP5evoJZ0 - - ICECAST_RELAY_PASSWORD=9PmUbI1mLne9o - ports: - - 8000:8000 + radio: image: fergalmoran/dss.radio env_file: From 2abf2696877be19a42db122c58eeb40b0469b3e4 Mon Sep 17 00:00:00 2001 From: Fergal Moran Date: Tue, 2 Feb 2016 20:42:03 +0000 Subject: [PATCH 2/3] Added api certs --- .gitignore | 5 ++++ nginx/ssl/api.crt | 64 +++++++++++++++++++++++++++++++++++++++++++++ nginx/ssl/api.csr | 17 ++++++++++++ nginx/ssl/api.key | 28 ++++++++++++++++++++ postgres/backup.sh | 2 ++ postgres/backup.sql | 1 + 6 files changed, 117 insertions(+) create mode 100644 nginx/ssl/api.crt create mode 100644 nginx/ssl/api.csr create mode 100644 nginx/ssl/api.key create mode 100644 postgres/backup.sh create mode 100644 postgres/backup.sql diff --git a/.gitignore b/.gitignore index a3c27eb..9a7d555 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,8 @@ web_env radio_env logs/ + +start-server.sh +start_local.sh +stop_local.sh + diff --git a/nginx/ssl/api.crt b/nginx/ssl/api.crt new file mode 100644 index 0000000..dfa5eaf --- /dev/null +++ b/nginx/ssl/api.crt @@ -0,0 +1,64 @@ +-----BEGIN CERTIFICATE----- +MIIE/DCCA+SgAwIBAgIQHBAGf2spfbC3YljHUkXqgjANBgkqhkiG9w0BAQsFADB4 +MQswCQYDVQQGEwJJTDEWMBQGA1UEChMNU3RhcnRDb20gTHRkLjEpMCcGA1UECxMg +U3RhcnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxJjAkBgNVBAMTHVN0YXJ0 +Q29tIENsYXNzIDEgRFYgU2VydmVyIENBMB4XDTE2MDIwMjE5Mzc1MVoXDTE3MDIw +MjE5Mzc1MVowIjEgMB4GA1UEAwwXYXBpLmRlZXBzb3V0aHNvdW5kcy5jb20wggEi +MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC45PPug1RnipVJ+NGjBzXelj6s +gIlez7JbL0W6PiRu5H1wJhijCFG4MZqmohDhjrgDReksLkFNIm07CxcXYvpxdH+d +woentDAu275ICRN+OVk6GoYJOcKkFmixt9+3LRdTnunDpOAscv24KvSGp+5ZP6Nx +KOyt34OHR3k/6tCY3IwdswirtHKTiFKX0gL2xTbYCsh+PfDF0p3W3PJeyAhUa/j4 +N9VrgE8OSxueBLR4fpXw35Sct4cgc0uL2NFmFQy2eJ65eyG0JZtX/jna5K9SITvu +P7Wo6mh7ZzTVCQGyjSrjbO2Wbvp1w04uV+ZJEPPd9Ox05dVNV35HefjYbwIlAgMB +AAGjggHWMIIB0jALBgNVHQ8EBAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsG +AQUFBwMBMAkGA1UdEwQCMAAwHQYDVR0OBBYEFH3/s5cla4l1/KXcatZj2cKtXT45 +MB8GA1UdIwQYMBaAFNeRTgHEsL/4yGeTRJznM/qtkwyvMG8GCCsGAQUFBwEBBGMw +YTAkBggrBgEFBQcwAYYYaHR0cDovL29jc3Auc3RhcnRzc2wuY29tMDkGCCsGAQUF +BzAChi1odHRwOi8vYWlhLnN0YXJ0c3NsLmNvbS9jZXJ0cy9zY2Euc2VydmVyMS5j +cnQwOAYDVR0fBDEwLzAtoCugKYYnaHR0cDovL2NybC5zdGFydHNzbC5jb20vc2Nh +LXNlcnZlcjEuY3JsMDcGA1UdEQQwMC6CF2FwaS5kZWVwc291dGhzb3VuZHMuY29t +ghNkZWVwc291dGhzb3VuZHMuY29tMCMGA1UdEgQcMBqGGGh0dHA6Ly93d3cuc3Rh +cnRzc2wuY29tLzBQBgNVHSAESTBHMAgGBmeBDAECATA7BgsrBgEEAYG1NwECBDAs +MCoGCCsGAQUFBwIBFh5odHRwOi8vd3d3LnN0YXJ0c3NsLmNvbS9wb2xpY3kwDQYJ +KoZIhvcNAQELBQADggEBAMqtoLFQsoN02xW5XA3hnZIgmn48i/zp0hO9cQG14fM7 +M6SCh/SEUL03nGbgoeJrfxSofiXrLOLTpgabPPSBfwtXEQR7VyxjJ7uKYS2CE0e9 +tHE0QuDfPQ8DrjgEZWh1gYKxzyTBOrA4Cx74rj3BUJQcL4RdtDXAJRgojoTwYlW1 +jj5Vrz0tXAcw3KGeBY70GlSN94WRW9ug5orz1OI15/q3oAehjgM+oBWk1qXgfSaE +2AQ1RP0XT9oB56uvufBi5Jt1DQnnZTHo+1K7wP8pbSXeuHFBs71cVvBsnbqzZE/y +ZVtxMkwNaI0u6backAEuJAOeiYCdOlY69mXSRMFKqUE= +-----END CERTIFICATE----- + +-----BEGIN CERTIFICATE----- +MIIF5TCCA82gAwIBAgIQal3D5TtOT9B7aR6l/OxkazANBgkqhkiG9w0BAQsFADB9 +MQswCQYDVQQGEwJJTDEWMBQGA1UEChMNU3RhcnRDb20gTHRkLjErMCkGA1UECxMi +U2VjdXJlIERpZ2l0YWwgQ2VydGlmaWNhdGUgU2lnbmluZzEpMCcGA1UEAxMgU3Rh +cnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMTUxMjE2MDEwMDA1WhcN +MzAxMjE2MDEwMDA1WjB4MQswCQYDVQQGEwJJTDEWMBQGA1UEChMNU3RhcnRDb20g +THRkLjEpMCcGA1UECxMgU3RhcnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkx +JjAkBgNVBAMTHVN0YXJ0Q29tIENsYXNzIDEgRFYgU2VydmVyIENBMIIBIjANBgkq +hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2uz0qohni7BLYmaWv8lEaObCK0ygM86s +eeN2w9FW4HWvQbQKRYDvy43kFuMmFD4RHkHn1Mk7sijXkJ/F8NH+5Tjbins7tFIC +ZXd+Qe2ODCMcWbOLoYB54sM514tsZk6m3M4lZi3gmT7ISFiNdKpf/C3dZwasWea+ +dbLpwQWZEcM6oCXmW/6L3kwQAhC0GhJm2rBVrYEDvZq1EK3Bv+g5gAW8DVfusUai +oyW0wfQdnKtOLv1M4rtezrKtE8T5tjyeKvFqMX93+LYVlT8Vs+sD12s3ncldqEDL +U89IiBjg6FsbLfM2Ket/3RbfvggfQMPQshipdhrZL8q10jibTlViGQIDAQABo4IB +ZDCCAWAwDgYDVR0PAQH/BAQDAgEGMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF +BQcDATASBgNVHRMBAf8ECDAGAQH/AgEAMDIGA1UdHwQrMCkwJ6AloCOGIWh0dHA6 +Ly9jcmwuc3RhcnRzc2wuY29tL3Nmc2NhLmNybDBmBggrBgEFBQcBAQRaMFgwJAYI +KwYBBQUHMAGGGGh0dHA6Ly9vY3NwLnN0YXJ0c3NsLmNvbTAwBggrBgEFBQcwAoYk +aHR0cDovL2FpYS5zdGFydHNzbC5jb20vY2VydHMvY2EuY3J0MB0GA1UdDgQWBBTX +kU4BxLC/+Mhnk0Sc5zP6rZMMrzAfBgNVHSMEGDAWgBROC+8apEBbpRdphzDKNGhD +0EGu8jA/BgNVHSAEODA2MDQGBFUdIAAwLDAqBggrBgEFBQcCARYeaHR0cDovL3d3 +dy5zdGFydHNzbC5jb20vcG9saWN5MA0GCSqGSIb3DQEBCwUAA4ICAQCO5z+95Eu6 +gog9K9e7DatQXfeUL8zq1Ycj0HKo3ZvFhRjULAVrMj7JrURtfoZziTDl39gvMDhL +voN5EFEYQWyre5ySsFgGeZQHIC0zhETILSyAE7JCKaEJ//APnkcQfx458GOuJvi+ +p2JpRxa8Sc/HVJ9HqA687QbbJFFZlUP5IqLtCb8yZVBURd4Nm/+01DXBzomoQPwA +K3cYl9br6Q+eKmCKPKN6X4IT1gwtwXuca1f3OpZTbUFPdPz1KvP1qCFt+rNieSmO +BN76Xa9ffzoBByzVdnvk2OHuopmJq/eHF+E3s+GFYT6Oxjrez/lEbBvgEmGyXZOZ +aj6XeDnBxOIYRODfnZG99cy2q5WtDLHKuiMogJGO89PWaI2jK1Aq5sa0j55jp2Je +FXbRieKw5CKreCIiNR9MpaffieLgbTcK1BSKjxUZtd7BqJ3x1lvD2jbe7WKqzusZ +btPhFgrDDsgdw27zQokNYBZZaa1LwYZGZgddiAcLcYkilGobA2wLKk6eYz6VnatD +dI4aQx6FkHWvKU0e7s/cUym6Px3vXrC4z6woAztC98XaorPO0pkL73P4dKSjnKYY +rYsqe7BnBGtANf1XaG5Pm8BUWJ9WZAWin6KsJXTo8Nj0G4CRq7dq17LBnCbi9Qmp +Szc2kuPNbrV8PvbTLIXupfZFFj0d9mpaFg== +-----END CERTIFICATE----- diff --git a/nginx/ssl/api.csr b/nginx/ssl/api.csr new file mode 100644 index 0000000..4e1dc23 --- /dev/null +++ b/nginx/ssl/api.csr @@ -0,0 +1,17 @@ +-----BEGIN CERTIFICATE REQUEST----- +MIICxzCCAa8CAQAwgYExCzAJBgNVBAYTAklFMRAwDgYDVQQIDAdNdW5zdGVyMQ0w +CwYDVQQHDARDb3JrMRAwDgYDVQQKDAdQb2ROb21zMSAwHgYDVQQDDBdhcGkuZGVl +cHNvdXRoc291bmRzLmNvbTEdMBsGCSqGSIb3DQEJARYORmVyZ0BsTW9yYW4ubWUw +ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC45PPug1RnipVJ+NGjBzXe +lj6sgIlez7JbL0W6PiRu5H1wJhijCFG4MZqmohDhjrgDReksLkFNIm07CxcXYvpx +dH+dwoentDAu275ICRN+OVk6GoYJOcKkFmixt9+3LRdTnunDpOAscv24KvSGp+5Z +P6NxKOyt34OHR3k/6tCY3IwdswirtHKTiFKX0gL2xTbYCsh+PfDF0p3W3PJeyAhU +a/j4N9VrgE8OSxueBLR4fpXw35Sct4cgc0uL2NFmFQy2eJ65eyG0JZtX/jna5K9S +ITvuP7Wo6mh7ZzTVCQGyjSrjbO2Wbvp1w04uV+ZJEPPd9Ox05dVNV35HefjYbwIl +AgMBAAGgADANBgkqhkiG9w0BAQsFAAOCAQEABjak1RxPiZTEE+X22NQALoT8N3tR +qiUg9ihaTrb57DUsfKGuLGVxOH8fehrg44LZqAk0wabrfRPLaw748uWS+sqBg0nX +0R8D+NYq1xiTLFmegFHv0gyzPFK25TGI7VL+oi64O+09uIrsVn9xG5AeH7TxW2q7 +ib4vgOoaVj6MtLvswxUEjIJHNuZKWp0cmsLeLQnOozhpr8JYBjBWYv/fiJM0VjkN +VzRVKQIaN07n8jcbncGzbjpg0u3M12UKDK1eyTvNSM9efwcYUMMhyGikFUeO9i4+ +u4ExDnRSfElXuufD45oYVIbjk570jze3Q9SqyN4YTWrkHjJh218DWk8n2Q== +-----END CERTIFICATE REQUEST----- diff --git a/nginx/ssl/api.key b/nginx/ssl/api.key new file mode 100644 index 0000000..eea07ce --- /dev/null +++ b/nginx/ssl/api.key @@ -0,0 +1,28 @@ +-----BEGIN PRIVATE KEY----- +MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQC45PPug1RnipVJ ++NGjBzXelj6sgIlez7JbL0W6PiRu5H1wJhijCFG4MZqmohDhjrgDReksLkFNIm07 +CxcXYvpxdH+dwoentDAu275ICRN+OVk6GoYJOcKkFmixt9+3LRdTnunDpOAscv24 +KvSGp+5ZP6NxKOyt34OHR3k/6tCY3IwdswirtHKTiFKX0gL2xTbYCsh+PfDF0p3W +3PJeyAhUa/j4N9VrgE8OSxueBLR4fpXw35Sct4cgc0uL2NFmFQy2eJ65eyG0JZtX +/jna5K9SITvuP7Wo6mh7ZzTVCQGyjSrjbO2Wbvp1w04uV+ZJEPPd9Ox05dVNV35H +efjYbwIlAgMBAAECggEAIp/1snfzqYRBWt323FHwW6PFTuavUwsQOpVKuIsEpaOy +ffsUaAuZyiW38XauNJ9WhH5mITj0T66fyAvWojGN9ws7Dt8sKlLLJytNog3ZEa1J +sWDgMwAXHEV6C7YEdjhCgw1id5n7xTcvnnqk2ka+kwYg5IMmd5VA+2d+JGMj90wc +juzpaAdxNcGCgfCvToDfB1j2WDgphN5tKbwiOmIMHzotbd03sGD2NU64WoERTN+G +xEJ8F2gIm2WPkOeiqmYN6dtoJP/b8/1qUok7oRnSnTEw6DgzStXS7YEmNkqSK4cm +rVqEKUj6nHkpulWuyayvQkHmMCTvNqNmMbkXfe8ggQKBgQDciYHVD2vYTTUQ0QCH +Hb/19f1kWtkPkR+tJY796a5jbLieV96K4JyUNN2iUIuZ1cpK42jLc1ACZpL3nb6h +++o/UWjyZff3V0fSHy9N9YU498PAASi1Uh/WJPXmGT8ZxCu8UxzTGVCdJRvujaE1 +Lcnktk4SMbk346ttmW5hQ0YOIQKBgQDWoDJyOtWfvE70XDnQd8tBQQBxvAHeU6I7 +TRe5CnGDAPmnwuX444af9OvH6i0pR5i/CC52BVY/Qd9Dy+kXspLsRIPLRa7S7QOI +r5ESWkbq3rKLT7U/D4kEcwR+PZ5NLX4bw78lHCn8Koyrix3AqOYhOEXe6bqtO4+4 +tzzwhiZLhQKBgQC3bwx1mjkalcVwslbdC+qx+6SDB2mKICyXySixm9/4ROMemXm6 +S+8Q+xPqQVKMZx22woZUyxoelRDjMurwMuf5OI6xKA1jRs6vQE8JahEgfDzuhEhG +4QMoDGAXvqIUnW2/W+Ya0/CQdOBRwK343JgUS2qOiZtEmHLrW3ZLIjiv4QKBgQCk +vVH7XC2c7m2sIx49ZbYd4Eb3BdhpTsi3u/T5k4qNg7IdkvvyjrJHFTflu1nu1YXp +G96NuIr7AxTcdSf1iJw9vllrLZGDVWnhAOHZtHG61jU1uXjlboc9YwuP2rwngUPL +C/UsBvIzHHXdNmsf9oSt+wOmlsEzNwSaRAwCkvXSAQKBgQDCJqusdG3CTvGeewu1 +ykMhgV+kT0bopsDNua/LhT5Qz4FweJu0Vby2VNxkcNAIX85Iiyl0QkVUTmX9Nl85 +D2wn+oJBQPSBkJ/Vy8qHauycWmn/hUoWnu6yrVUpGgPHuqCbqBHjxACDobDdJQVz +QH2idzwQe305CU/oKLJbm4J4Kw== +-----END PRIVATE KEY----- diff --git a/postgres/backup.sh b/postgres/backup.sh new file mode 100644 index 0000000..c382268 --- /dev/null +++ b/postgres/backup.sh @@ -0,0 +1,2 @@ +su - postgres -c pg_dump deepsouthsounds > /tmp/dss.sql +scp /tmp/dss.sql fergalm@home.bitchmints.com:/srv/dev/ diff --git a/postgres/backup.sql b/postgres/backup.sql new file mode 100644 index 0000000..052205d --- /dev/null +++ b/postgres/backup.sql @@ -0,0 +1 @@ +su postgres -c 'pg_dump -h 127.0.0.1 deepsouthsounds > "/tmp/backup_$(date +"%m%d%Y%H%M%S.sql")"' From d1259a30d0acdabc2adb8bdd9cdc832ed40cc1a1 Mon Sep 17 00:00:00 2001 From: Fergal Moran Date: Tue, 2 Feb 2016 20:46:53 +0000 Subject: [PATCH 3/3] Added API cert --- nginx/sites-enabled/deepsouthsounds.com | 17 +++++++++++++---- nginx/ssl/api.csr | 17 ----------------- 2 files changed, 13 insertions(+), 21 deletions(-) delete mode 100644 nginx/ssl/api.csr diff --git a/nginx/sites-enabled/deepsouthsounds.com b/nginx/sites-enabled/deepsouthsounds.com index 4de3a1b..ab22739 100644 --- a/nginx/sites-enabled/deepsouthsounds.com +++ b/nginx/sites-enabled/deepsouthsounds.com @@ -19,11 +19,20 @@ server { listen 80; + listen 443 default ssl; + server_name api.deepsouthsounds.com api-test.deepsouthsounds.com; client_max_body_size 0; + ssl_certificate /etc/nginx/ssl/api.crt; + ssl_certificate_key /etc/nginx/ssl/api.key; + + if ($ssl_protocol = "") { + rewrite ^ https://$server_name$request_uri? permanent; + } + location /assets/grappelli { - alias /usr/local/lib/python2.7/site-packages/grappelli/static/grappelli; + alias /usr/local/lib/python2.7/site-packages/grappelli/static/grappelli; } location /assets { @@ -54,9 +63,9 @@ server { ssl_certificate /etc/nginx/ssl/dss.crt; ssl_certificate_key /etc/nginx/ssl/dss.key; - #if ($ssl_protocol = "") { - # rewrite ^ https://$server_name$request_uri? permanent; - #} + if ($ssl_protocol = "") { + rewrite ^ https://$server_name$request_uri? permanent; + } client_max_body_size 250M; diff --git a/nginx/ssl/api.csr b/nginx/ssl/api.csr deleted file mode 100644 index 4e1dc23..0000000 --- a/nginx/ssl/api.csr +++ /dev/null @@ -1,17 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MIICxzCCAa8CAQAwgYExCzAJBgNVBAYTAklFMRAwDgYDVQQIDAdNdW5zdGVyMQ0w -CwYDVQQHDARDb3JrMRAwDgYDVQQKDAdQb2ROb21zMSAwHgYDVQQDDBdhcGkuZGVl -cHNvdXRoc291bmRzLmNvbTEdMBsGCSqGSIb3DQEJARYORmVyZ0BsTW9yYW4ubWUw -ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC45PPug1RnipVJ+NGjBzXe -lj6sgIlez7JbL0W6PiRu5H1wJhijCFG4MZqmohDhjrgDReksLkFNIm07CxcXYvpx -dH+dwoentDAu275ICRN+OVk6GoYJOcKkFmixt9+3LRdTnunDpOAscv24KvSGp+5Z -P6NxKOyt34OHR3k/6tCY3IwdswirtHKTiFKX0gL2xTbYCsh+PfDF0p3W3PJeyAhU -a/j4N9VrgE8OSxueBLR4fpXw35Sct4cgc0uL2NFmFQy2eJ65eyG0JZtX/jna5K9S -ITvuP7Wo6mh7ZzTVCQGyjSrjbO2Wbvp1w04uV+ZJEPPd9Ox05dVNV35HefjYbwIl -AgMBAAGgADANBgkqhkiG9w0BAQsFAAOCAQEABjak1RxPiZTEE+X22NQALoT8N3tR -qiUg9ihaTrb57DUsfKGuLGVxOH8fehrg44LZqAk0wabrfRPLaw748uWS+sqBg0nX -0R8D+NYq1xiTLFmegFHv0gyzPFK25TGI7VL+oi64O+09uIrsVn9xG5AeH7TxW2q7 -ib4vgOoaVj6MtLvswxUEjIJHNuZKWp0cmsLeLQnOozhpr8JYBjBWYv/fiJM0VjkN -VzRVKQIaN07n8jcbncGzbjpg0u3M12UKDK1eyTvNSM9efwcYUMMhyGikFUeO9i4+ -u4ExDnRSfElXuufD45oYVIbjk570jze3Q9SqyN4YTWrkHjJh218DWk8n2Q== ------END CERTIFICATE REQUEST-----