Host website outside home
This commit is contained in:
23
ansible/roles/website/files/docker-compose.yml
Normal file
23
ansible/roles/website/files/docker-compose.yml
Normal file
@ -0,0 +1,23 @@
|
||||
version: "2.3"
|
||||
services:
|
||||
website:
|
||||
image: docker.pkg.github.com/realorangeone/theorangeone.net/theorangeone.net:latest
|
||||
container_name: theorangeone.net
|
||||
environment:
|
||||
- TZ=Europe/London
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- ./access.log:/var/log/nginx/access.log
|
||||
- ./report.html:/usr/share/nginx/html/stats/index.html:ro
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.website.rule=Host(`theorangeone.net`) || Host(`www.theorangeone.net`)"
|
||||
- "traefik.http.routers.website.tls=true"
|
||||
- "traefik.http.routers.website.tls.certresolver=le"
|
||||
|
||||
stats:
|
||||
image: theorangeone/goaccess-static:latest
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- ./report.html:/var/www/goaccess/report.html
|
||||
- ./access.log:/goaccess/access.log:ro
|
29
ansible/roles/website/tasks/main.yml
Normal file
29
ansible/roles/website/tasks/main.yml
Normal file
@ -0,0 +1,29 @@
|
||||
- name: Create install directory
|
||||
file:
|
||||
path: /opt/theorangeone.net
|
||||
state: directory
|
||||
owner: "{{ docker_user.name }}"
|
||||
mode: "{{ docker_compose_directory_mask }}"
|
||||
become: true
|
||||
|
||||
- name: Install compose file
|
||||
template:
|
||||
src: files/docker-compose.yml
|
||||
dest: /opt/theorangeone.net/docker-compose.yml
|
||||
mode: "{{ docker_compose_file_mask }}"
|
||||
owner: "{{ docker_user.name }}"
|
||||
validate: /usr/bin/docker-compose -f %s config
|
||||
register: compose_file
|
||||
become: true
|
||||
|
||||
- name: Cycle container
|
||||
docker_compose:
|
||||
project_src: /opt/theorangeone.net
|
||||
pull: true
|
||||
remove_orphans: true
|
||||
remove_volumes: true
|
||||
state: "{{ item }}"
|
||||
when: compose_file.changed
|
||||
loop:
|
||||
- absent
|
||||
- present
|
Reference in New Issue
Block a user