Compare commits
2 Commits
48ef6eda37
...
0cc349765e
| Author | SHA1 | Date | |
|---|---|---|---|
| 0cc349765e | |||
| 7ad7b26385 |
@@ -11,30 +11,12 @@ app_data_disks:
|
||||
disk_id: scsi1
|
||||
mount_point: /data/pocket-id
|
||||
device: /dev/sdb
|
||||
komodo:
|
||||
vm: infra-core-1
|
||||
vmid: 410
|
||||
node: purah
|
||||
size: "20"
|
||||
storage: purah-mirror-860gb
|
||||
disk_id: scsi2
|
||||
mount_point: /data/komodo
|
||||
device: /dev/sdc
|
||||
komodo-periphery-media:
|
||||
vm: media-1
|
||||
vmid: 420
|
||||
node: purah
|
||||
size: "20"
|
||||
storage: purah-mirror-860gb
|
||||
disk_id: scsi1
|
||||
mount_point: /data/komodo-periphery
|
||||
device: /dev/sdb
|
||||
komodo-periphery-apps:
|
||||
trek:
|
||||
vm: apps-1
|
||||
vmid: 430
|
||||
node: yunobo
|
||||
size: "20"
|
||||
size: "10"
|
||||
storage: nvme-2tb
|
||||
disk_id: scsi1
|
||||
mount_point: /data/komodo-periphery
|
||||
mount_point: /data/trek
|
||||
device: /dev/sdb
|
||||
|
||||
@@ -31,3 +31,4 @@
|
||||
- base
|
||||
- docker
|
||||
- komodo-periphery
|
||||
- trek
|
||||
|
||||
@@ -0,0 +1,53 @@
|
||||
---
|
||||
- name: Add data disk to VM for trek
|
||||
community.proxmox.proxmox_disk:
|
||||
api_host: "{{ proxmox_api_host }}"
|
||||
api_user: "{{ proxmox_api_user }}"
|
||||
api_token_id: "{{ proxmox_api_token_id }}"
|
||||
api_token_secret: "{{ proxmox_api_token_secret }}"
|
||||
vmid: "{{ app_data_disks.trek.vmid }}"
|
||||
disk: "{{ app_data_disks.trek.disk_id }}"
|
||||
storage: "{{ app_data_disks.trek.storage }}"
|
||||
size: "{{ app_data_disks.trek.size }}"
|
||||
state: present
|
||||
delegate_to: localhost
|
||||
become: no
|
||||
run_once: true
|
||||
ignore_errors: yes
|
||||
register: disk_result
|
||||
|
||||
- name: Display disk creation result
|
||||
debug:
|
||||
var: disk_result
|
||||
|
||||
- name: Wait for data disk to be available
|
||||
wait_for:
|
||||
path: "{{ app_data_disks.trek.device }}"
|
||||
state: present
|
||||
timeout: 30
|
||||
|
||||
- name: Check if data disk is formatted
|
||||
command: "blkid {{ app_data_disks.trek.device }}"
|
||||
register: disk_formatted
|
||||
failed_when: false
|
||||
changed_when: false
|
||||
|
||||
- name: Format data disk with ext4
|
||||
filesystem:
|
||||
fstype: ext4
|
||||
dev: "{{ app_data_disks.trek.device }}"
|
||||
when: disk_formatted.rc != 0
|
||||
|
||||
- name: Create trek data mount point
|
||||
file:
|
||||
path: "{{ app_data_disks.trek.mount_point }}"
|
||||
state: directory
|
||||
mode: "0755"
|
||||
|
||||
- name: Mount data disk
|
||||
mount:
|
||||
path: "{{ app_data_disks.trek.mount_point }}"
|
||||
src: "{{ app_data_disks.trek.device }}"
|
||||
fstype: ext4
|
||||
state: mounted
|
||||
opts: defaults
|
||||
@@ -0,0 +1,2 @@
|
||||
OIDC_CLIENT_SECRET=[[TREKCLIENTSECRET]]
|
||||
ENCRYPTION_KEY=[[TREKENCRYPTIONKEY]]
|
||||
@@ -0,0 +1,43 @@
|
||||
services:
|
||||
app:
|
||||
image: mauriceboe/trek:latest
|
||||
container_name: trek
|
||||
read_only: true
|
||||
security_opt:
|
||||
- no-new-privileges:true
|
||||
cap_drop:
|
||||
- ALL
|
||||
cap_add:
|
||||
- CHOWN
|
||||
- SETUID
|
||||
- SETGID
|
||||
tmpfs:
|
||||
- /tmp:noexec,nosuid,size=64m
|
||||
ports:
|
||||
- "3000:3000"
|
||||
environment:
|
||||
- NODE_ENV=production
|
||||
- PORT=3000
|
||||
- ENCRYPTION_KEY=${ENCRYPTION_KEY}
|
||||
- TZ=Europe/Lisbon
|
||||
- LOG_LEVEL=info
|
||||
- ALLOWED_ORIGINS=https://trek.lino.cooking
|
||||
- FORCE_HTTPS=true
|
||||
- TRUST_PROXY=1
|
||||
- ALLOW_INTERNAL_NETWORK=trur
|
||||
- APP_URL=https://trek.lino.cooking
|
||||
- OIDC_ISSUER=https://auth.lino.cooking
|
||||
- OIDC_CLIENT_ID=652278a5-b695-4589-9d51-d23cfb2e15dd
|
||||
- OIDC_CLIENT_SECRET=${OIDC_CLIENT_SECRET}
|
||||
- OIDC_DISPLAY_NAME=PocketID
|
||||
- OIDC_ONLY=true
|
||||
volumes:
|
||||
- /data/trek/app:/app/data
|
||||
- /data/trek/uploads:/app/uploads
|
||||
restart: unless-stopped
|
||||
healthcheck:
|
||||
test: ["CMD", "wget", "-qO-", "http://localhost:3000/api/health"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
start_period: 15s
|
||||
Reference in New Issue
Block a user