Browse Source
This is useful when you want to handle ssl or when you want to proxy multiple containers on a single host.feature/molgenis-ssl
4 changed files with 67 additions and 0 deletions
@ -0,0 +1,6 @@
@@ -0,0 +1,6 @@
|
||||
--- |
||||
- hosts: all |
||||
become: True |
||||
roles: |
||||
- docker |
||||
- nginx-proxy |
@ -0,0 +1,25 @@
@@ -0,0 +1,25 @@
|
||||
--- |
||||
# Install Docker. Centos needs te be added. |
||||
|
||||
- apt_key: |
||||
id: 58118E89F3A912897C070ADBF76221572C52609D |
||||
keyserver: hkp://p80.pool.sks-keyservers.net:80 |
||||
state: present |
||||
when: ansible_distribution == 'Ubuntu' and ansible_distribution_release == 'xenial' |
||||
|
||||
- apt_repository: |
||||
repo: deb https://apt.dockerproject.org/repo ubuntu-xenial main |
||||
update_cache: yes |
||||
when: ansible_distribution == 'Ubuntu' and ansible_distribution_release == 'xenial' |
||||
|
||||
- name: install docker |
||||
apt: pkg={{ item }} state=latest |
||||
with_items: |
||||
- docker-engine |
||||
- python-docker |
||||
when: ansible_distribution == 'Ubuntu' and ansible_distribution_release == 'xenial' |
||||
|
||||
- name: make sure service is started |
||||
systemd: |
||||
name: docker.service |
||||
state: started |
@ -0,0 +1,20 @@
@@ -0,0 +1,20 @@
|
||||
# Install a nginx reverse proxy with a systemd unit file. |
||||
# See https://github.com/jwilder/nginx-proxy |
||||
--- |
||||
- name: install service file. |
||||
template: |
||||
src: templates/nginx-proxy.service |
||||
dest: /etc/systemd/system/nginx-proxy.service |
||||
mode: 644 |
||||
owner: root |
||||
group: root |
||||
|
||||
- command: systemctl daemon-reload |
||||
|
||||
- name: start service at boot. |
||||
command: systemctl reenable nginx-proxy.service |
||||
|
||||
- name: make sure service is started |
||||
systemd: |
||||
name: nginx-proxy.service |
||||
state: restarted |
@ -0,0 +1,16 @@
@@ -0,0 +1,16 @@
|
||||
[Unit] |
||||
Description=nginx reverse proxy for docker containers. |
||||
After=docker.service |
||||
Requires=docker.service |
||||
|
||||
[Service] |
||||
TimeoutStartSec=0 |
||||
Restart=always |
||||
ExecStartPre=-/usr/bin/docker kill %n |
||||
ExecStartPre=-/usr/bin/docker rm %n |
||||
ExecStart=/usr/bin/docker run --name %n \ |
||||
--rm -d -p 80:80 -p 443:443 -v /srv/certs:/etc/nginx/certs \ |
||||
-v /var/run/docker.sock:/tmp/docker.sock:ro jwilder/nginx-proxy |
||||
|
||||
[Install] |
||||
WantedBy=multi-user.target |
Reference in new issue