parent
ca9fc055fa
commit
d2eb7f7a1d
3 changed files with 99 additions and 1 deletions
|
@ -4,4 +4,4 @@ MAINTAINER philo email phil.dev@philome.mooo.com
|
||||||
EXPOSE 80
|
EXPOSE 80
|
||||||
|
|
||||||
COPY nginx.conf /etc/nginx/nginx.conf
|
COPY nginx.conf /etc/nginx/nginx.conf
|
||||||
COPY treetrail-app/dist/treetrail/browser /usr/share/nginx/html
|
COPY dist/treetrail/browser /usr/share/nginx/html
|
||||||
|
|
33
build.yaml
Normal file
33
build.yaml
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
- name: Build containers
|
||||||
|
hosts: localhost
|
||||||
|
tasks:
|
||||||
|
- name: Install dependencies
|
||||||
|
command: pnpm install
|
||||||
|
args:
|
||||||
|
chdir: "{{ playbook_dir }}"
|
||||||
|
|
||||||
|
- name: Build the Angular app
|
||||||
|
command: ng build
|
||||||
|
args:
|
||||||
|
chdir: "{{ playbook_dir }}"
|
||||||
|
|
||||||
|
- name: Get the version from git
|
||||||
|
command: git describe --dirty --tags
|
||||||
|
register: version
|
||||||
|
args:
|
||||||
|
chdir: "{{ playbook_dir }}"
|
||||||
|
|
||||||
|
- name: Build frontend container
|
||||||
|
containers.podman.podman_image:
|
||||||
|
name: "treetrail-frontend:{{ version.stdout }}"
|
||||||
|
state: build
|
||||||
|
path: "{{ playbook_dir }}"
|
||||||
|
build:
|
||||||
|
format: oci
|
||||||
|
force_rm: yes
|
||||||
|
cache: no
|
||||||
|
file: Containerfile
|
||||||
|
#quadlet_options:
|
||||||
|
# - |
|
||||||
|
# [Install]
|
||||||
|
# WantedBy=default.target
|
65
nginx.conf
Normal file
65
nginx.conf
Normal file
|
@ -0,0 +1,65 @@
|
||||||
|
events {
|
||||||
|
worker_connections 1024; ## Default: 1024
|
||||||
|
}
|
||||||
|
|
||||||
|
http {
|
||||||
|
|
||||||
|
## use mime types
|
||||||
|
include /etc/nginx/mime.types;
|
||||||
|
|
||||||
|
server {
|
||||||
|
|
||||||
|
listen 80 default_server;
|
||||||
|
server_name _;
|
||||||
|
root /usr/share/nginx/html;
|
||||||
|
|
||||||
|
location = / {
|
||||||
|
## Convevience redirect to redirect to the web root
|
||||||
|
return 301 /treetrail/;
|
||||||
|
}
|
||||||
|
|
||||||
|
location = /treetrail {
|
||||||
|
## Convevience redirect to redirect to the web root
|
||||||
|
return 301 /treetrail/;
|
||||||
|
}
|
||||||
|
|
||||||
|
location /treetrail/ {
|
||||||
|
alias /usr/share/nginx/html/;
|
||||||
|
index index.html;
|
||||||
|
try_files $uri $uri/ /index.html;
|
||||||
|
}
|
||||||
|
|
||||||
|
location /treetrail/v1/ {
|
||||||
|
proxy_set_header Host $http_host;
|
||||||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||||||
|
proxy_set_header Upgrade $http_upgrade;
|
||||||
|
proxy_set_header Connection $connection_upgrade;
|
||||||
|
proxy_redirect off;
|
||||||
|
proxy_buffering off;
|
||||||
|
proxy_pass http://127.0.0.1:8081;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
map $http_upgrade $connection_upgrade {
|
||||||
|
default upgrade;
|
||||||
|
'' close;
|
||||||
|
}
|
||||||
|
|
||||||
|
## enable gzip compression
|
||||||
|
gzip on;
|
||||||
|
gzip_vary on;
|
||||||
|
gzip_min_length 256;
|
||||||
|
gzip_proxied any;
|
||||||
|
|
||||||
|
gzip_types
|
||||||
|
## text/html is always compressed : https://nginx.org/en/docs/http/ngx_http_gzip_module.html
|
||||||
|
text/plain
|
||||||
|
text/css
|
||||||
|
text/javascript
|
||||||
|
application/javascript
|
||||||
|
application/x-javascript
|
||||||
|
application/xml
|
||||||
|
application/json
|
||||||
|
application/ld+json;
|
||||||
|
}
|
Loading…
Add table
Add a link
Reference in a new issue