Compare commits
19 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 809560f8ca | |||
| 15bdf96d76 | |||
| f08a4f9cb7 | |||
| 701a4fbde3 | |||
| 4fe9bbecb3 | |||
| a96beafe21 | |||
| 9500d5f39b | |||
| 1216beee88 | |||
| 94e793e1ad | |||
| 96e15c9786 | |||
| 9b18d386e8 | |||
| db2130a634 | |||
| 1e27a9817b | |||
| 3ac23e5d5c | |||
| 245670e37f | |||
| 03b0ca68db | |||
| 2108450ab0 | |||
| f8c39e324a | |||
| db2057c8ef |
@@ -180,8 +180,8 @@ jobs:
|
|||||||
gotify_app_token: '${{ secrets.RINOA_RUNNER_GOTIFY_TOKEN }}'
|
gotify_app_token: '${{ secrets.RINOA_RUNNER_GOTIFY_TOKEN }}'
|
||||||
notification_title: 'GITEA: Cloudflare Setup @ Rinoa'
|
notification_title: 'GITEA: Cloudflare Setup @ Rinoa'
|
||||||
notification_message: 'Cloudflare DNS setup completed successfully.'
|
notification_message: 'Cloudflare DNS setup completed successfully.'
|
||||||
regenerate-readme:
|
regenerate-readme-modified-services:
|
||||||
name: Update README
|
name: Update README & Generate List of Modified Services
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
needs: [cloudflare-dns-setup]
|
needs: [cloudflare-dns-setup]
|
||||||
outputs:
|
outputs:
|
||||||
@@ -192,19 +192,20 @@ jobs:
|
|||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
- name: Install yq
|
- name: Install yq
|
||||||
uses: dcarbone/install-yq-action@v1
|
uses: dcarbone/install-yq-action@v1
|
||||||
# - name: Fetch main branch for comparison
|
- name: Fetch main branch for comparison
|
||||||
# run: |
|
run: |
|
||||||
# git fetch origin main:main
|
git fetch origin main:main
|
||||||
# - name: Compare services using yq
|
- name: Compare services using yq
|
||||||
# id: compare-services
|
continue-on-error: true
|
||||||
# run: |
|
id: compare-services
|
||||||
# current_services=$(yq '.services | to_entries' docker-compose.yml)
|
run: |
|
||||||
# git show main:docker-compose.yml > main_compose.yml
|
current_services=$(yq '.services | to_entries' docker-compose.yml)
|
||||||
# main_services=$(yq '.services | to_entries' main_compose.yml)
|
git show main:docker-compose.yml > main_compose.yml
|
||||||
# modified_services_file=$(comm -13 <(echo "$main_services") <(echo "$current_services") > changes_compose.yml)
|
main_services=$(yq '.services | to_entries' main_compose.yml)
|
||||||
# modified_services=${egrep '^ [a-z]' changes.yml | sed -e 's|^ ||g' -e 's|:||g' | sed ':a;N;$!ba;s/\n/ /g'}
|
modified_services_file=$(comm -13 <(echo "$main_services") <(echo "$current_services") > changes_compose.yml)
|
||||||
# echo "Modified services: $modified_services"
|
modified_services=${egrep '^ [a-z]' changes.yml | sed -e 's|^ ||g' -e 's|:||g' | sed ':a;N;$!ba;s/\n/ /g'}
|
||||||
# echo "modified_services=$modified_services" >> $GITHUB_OUTPUT
|
echo "Modified services: $modified_services"
|
||||||
|
echo "modified_services=$modified_services" >> $GITHUB_OUTPUT
|
||||||
- name: Generate service list
|
- name: Generate service list
|
||||||
run: |
|
run: |
|
||||||
yq '.services | to_entries | map({"service": .key, "image": .value.image})' docker-compose.yml > services.yml
|
yq '.services | to_entries | map({"service": .key, "image": .value.image})' docker-compose.yml > services.yml
|
||||||
@@ -301,12 +302,12 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
vault kv get -format=json rinoa-docker/env | jq -r '.data.data' | jq -r 'keys[] as $k | "\($k)='\''\(.[$k])'\''"' > .env
|
vault kv get -format=json rinoa-docker/env | jq -r '.data.data' | jq -r 'keys[] as $k | "\($k)='\''\(.[$k])'\''"' > .env
|
||||||
- name: Docker Compose Deployment
|
- name: Docker Compose Deployment
|
||||||
if: ${{ steps.detect-modified-services.outputs.modified_services != '' }}
|
if: ${{ steps.regenerate-readme-modified-services.outputs.modified_services != '' }}
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
uses: keatonLiu/docker-compose-remote-action@v1.2
|
uses: keatonLiu/docker-compose-remote-action@v1.2
|
||||||
with:
|
with:
|
||||||
docker_compose_file: docker-compose.yml
|
docker_compose_file: docker-compose.yml
|
||||||
docker_args: -d --remove-orphans --pull missing --parallel -1 ${{ steps.detect-modified-services.outputs.modified_services }}
|
docker_args: -d --remove-orphans --pull missing --parallel -1 ${{ steps.regenerate-readme-modified-services.outputs.modified_services }}
|
||||||
ssh_user: gitea-deploy
|
ssh_user: gitea-deploy
|
||||||
ssh_host: 192.168.1.254
|
ssh_host: 192.168.1.254
|
||||||
ssh_host_public_key: ${{ secrets.RINOA_GITEA_PUBLIC_SSH_KEY }}
|
ssh_host_public_key: ${{ secrets.RINOA_GITEA_PUBLIC_SSH_KEY }}
|
||||||
|
|||||||
-47
@@ -1,47 +0,0 @@
|
|||||||
ports:
|
|
||||||
- 2283:2283
|
|
||||||
restart: always
|
|
||||||
labels:
|
|
||||||
swag_port: 3000
|
|
||||||
swag_url: pics.${MY_TLD}
|
|
||||||
swag.uptime-kuma.enabled: true
|
|
||||||
swag.uptime-kuma.monitor.url: https://pics.${MY_TLD}
|
|
||||||
homepage.group: Lifestyle
|
|
||||||
homepage.name: Immich
|
|
||||||
homepage.href: https://pics.${MY_TLD}
|
|
||||||
homepage.icon: immich.svg
|
|
||||||
homepage.description: High performance self-hosted photo and video management solution
|
|
||||||
restart: always
|
|
||||||
immich-power-tools:
|
|
||||||
container_name: immich-power-tools
|
|
||||||
environment:
|
|
||||||
IMMICH_API_KEY: ${IMMICH_POWER_TOOLS_KEY}
|
|
||||||
IMMICH_URL: http://immich-server:2283
|
|
||||||
EXTERNAL_IMMICH_URL: https://pics.trez.wtf
|
|
||||||
image: ghcr.io/varun-raj/immich-power-tools:latest
|
|
||||||
ports:
|
|
||||||
- 54018:3000
|
|
||||||
influxdb2:
|
|
||||||
container_name: influxdb2
|
|
||||||
environment:
|
|
||||||
DOCKER_INFLUXDB_INIT_MODE: setup
|
|
||||||
DOCKER_INFLUXDB_INIT_USERNAME: admin
|
|
||||||
DOCKER_INFLUXDB_INIT_PASSWORD: ${INFLUXDB2_ADMIN_PASSWORD}
|
|
||||||
DOCKER_INFLUXDB_INIT_ADMIN_TOKEN: /run/secrets/influxdb2-admin-token
|
|
||||||
DOCKER_INFLUXDB_INIT_ORG: rinoa
|
|
||||||
DOCKER_INFLUXDB_INIT_BUCKET: rinoa
|
|
||||||
image: influxdb:2-alpine
|
|
||||||
labels:
|
|
||||||
swag: enable
|
|
||||||
swag_proto: http
|
|
||||||
swag_port: 8086
|
|
||||||
swag_url: influxdb.${MY_TLD}
|
|
||||||
swag.uptime-kuma.enabled: true
|
|
||||||
swag.uptime-kuma.monitor.url: https://influxdb.${MY_TLD}
|
|
||||||
homepage.group: System Administration
|
|
||||||
homepage.name: InfluxDBv2
|
|
||||||
homepage.href: https://influxdb.${MY_TLD}
|
|
||||||
homepage.icon: influxdb.svg
|
|
||||||
homepage.description: Scalable datastore for metrics, events, and real-time analytics
|
|
||||||
ports:
|
|
||||||
- 8086:8086
|
|
||||||
+355
-349
@@ -741,58 +741,6 @@ services:
|
|||||||
type: bind
|
type: bind
|
||||||
bind:
|
bind:
|
||||||
create_host_path: true
|
create_host_path: true
|
||||||
dagu-scheduler:
|
|
||||||
command: dagu scheduler
|
|
||||||
container_name: dagu-scheduler
|
|
||||||
image: ghcr.io/dagu-org/dagu:latest
|
|
||||||
networks:
|
|
||||||
default: null
|
|
||||||
restart: unless-stopped
|
|
||||||
volumes:
|
|
||||||
- source: dagu_config
|
|
||||||
target: /home/dagu/.config/dagu
|
|
||||||
type: volume
|
|
||||||
volume: {}
|
|
||||||
- source: dagu_data
|
|
||||||
target: /home/dagu/.local/share
|
|
||||||
type: volume
|
|
||||||
volume: {}
|
|
||||||
dagu-server:
|
|
||||||
container_name: dagu-server
|
|
||||||
environment:
|
|
||||||
DAGU_PORT: 8080
|
|
||||||
image: ghcr.io/dagu-org/dagu:latest
|
|
||||||
labels:
|
|
||||||
homepage.group: System Administration
|
|
||||||
homepage.name: Dagu
|
|
||||||
homepage.href: https://cron.${MY_TLD}
|
|
||||||
homepage.icon: sh-dagu.png
|
|
||||||
homepage.description: Cron alternative using DAGs (Directed Acyclic Graphs)
|
|
||||||
swag: enable
|
|
||||||
swag_port: 8080
|
|
||||||
swag_proto: http
|
|
||||||
swag_url: cron.${MY_TLD}
|
|
||||||
swag.uptime-kuma.enabled: true
|
|
||||||
swag.uptime-kuma.monitor.url: https://cron.${MY_TLD}
|
|
||||||
networks:
|
|
||||||
default: null
|
|
||||||
ports:
|
|
||||||
- mode: ingress
|
|
||||||
protocol: tcp
|
|
||||||
published: "8108"
|
|
||||||
target: 8080
|
|
||||||
restart: unless-stopped
|
|
||||||
volumes:
|
|
||||||
- source: dagu_config
|
|
||||||
target: /home/dagu/.config/dagu
|
|
||||||
type: volume
|
|
||||||
bind:
|
|
||||||
create_host_path: true
|
|
||||||
- source: dagu_data
|
|
||||||
target: /home/dagu/.local/share
|
|
||||||
type: volume
|
|
||||||
bind:
|
|
||||||
create_host_path: true
|
|
||||||
dbgate:
|
dbgate:
|
||||||
container_name: dbgate
|
container_name: dbgate
|
||||||
environment:
|
environment:
|
||||||
@@ -1944,21 +1892,24 @@ services:
|
|||||||
swag_proto: http
|
swag_proto: http
|
||||||
swag_port: 2283
|
swag_port: 2283
|
||||||
swag_url: pics.${MY_TLD}
|
swag_url: pics.${MY_TLD}
|
||||||
swag_server_custom_directive: >-
|
swag_server_custom_directive: |
|
||||||
location /share {
|
location /share {
|
||||||
proxy_pass http://immich-public-proxy:3000;
|
proxy_pass http://immich-public-proxy:3000;
|
||||||
proxy_set_header Host $$host;
|
}
|
||||||
proxy_set_header X-Real-IP $$remote_addr;
|
location /tools {
|
||||||
proxy_set_header X-Forwarded-For $$proxy_add_x_forwarded_for;
|
proxy_pass http://immich-power-tools:3000;
|
||||||
proxy_set_header X-Forwarded-Proto $$scheme;
|
|
||||||
}
|
}
|
||||||
swag.uptime-kuma.enabled: true
|
swag.uptime-kuma.enabled: true
|
||||||
swag.uptime-kuma.monitor.url: https://pics.${MY_TLD}
|
swag.uptime-kuma.monitor.url: https://pics.${MY_TLD}
|
||||||
homepage.group: Lifestyle
|
homepage.group: Media Library
|
||||||
homepage.name: Immich
|
homepage.name: Immich
|
||||||
homepage.href: https://pics.${MY_TLD}
|
homepage.href: https://pics.${MY_TLD}
|
||||||
homepage.icon: immich.svg
|
homepage.icon: immich.svg
|
||||||
homepage.description: High performance self-hosted photo and video management solution
|
homepage.description: High performance self-hosted photo and video management solution
|
||||||
|
homepage.widget.type: immich
|
||||||
|
homepage.widget.url: http://immich-server:2283
|
||||||
|
homepage.widget.key: ${IMMICH_POWER_TOOLS_KEY}
|
||||||
|
homepage.widget.version: 2
|
||||||
ports:
|
ports:
|
||||||
- 2283:2283
|
- 2283:2283
|
||||||
restart: always
|
restart: always
|
||||||
@@ -2023,16 +1974,38 @@ services:
|
|||||||
start_period: 10s
|
start_period: 10s
|
||||||
timeout: 5s
|
timeout: 5s
|
||||||
image: alangrainger/immich-public-proxy:latest
|
image: alangrainger/immich-public-proxy:latest
|
||||||
|
labels:
|
||||||
|
homepage.group: Lifestyle
|
||||||
|
homepage.name: Immich Public Proxy
|
||||||
|
homepage.href: https://pics.${MY_TLD}/share
|
||||||
|
homepage.icon: sh-immich-public-proxy.svg
|
||||||
|
homepage.description: Immich Proxy for public sharing
|
||||||
|
homepage.widget.type: immich
|
||||||
|
homepage.widget.url: http://immich-server:2283
|
||||||
|
homepage.widget.key: ${IMMICH_POWER_TOOLS_KEY}
|
||||||
|
homepage.widget.version: 2
|
||||||
restart: always
|
restart: always
|
||||||
immich-power-tools:
|
immich-power-tools:
|
||||||
container_name: immich-power-tools
|
container_name: immich-power-tools
|
||||||
environment:
|
environment:
|
||||||
|
DB_DATABASE_NAME: immich
|
||||||
|
DB_HOSTNAME: immich-pg-db
|
||||||
|
DB_PORT: 5432
|
||||||
|
DB_USERNAME: immich
|
||||||
|
DB_PASSWORD: ${IMMICH_DB_PASSWORD}
|
||||||
|
EXTERNAL_IMMICH_URL: https://pics.trez.wtf
|
||||||
IMMICH_API_KEY: ${IMMICH_POWER_TOOLS_KEY}
|
IMMICH_API_KEY: ${IMMICH_POWER_TOOLS_KEY}
|
||||||
IMMICH_URL: http://immich-server:2283
|
IMMICH_URL: http://immich-server:2283
|
||||||
EXTERNAL_IMMICH_URL: https://pics.trez.wtf
|
|
||||||
image: ghcr.io/varun-raj/immich-power-tools:latest
|
image: ghcr.io/varun-raj/immich-power-tools:latest
|
||||||
|
labels:
|
||||||
|
homepage.group: Lifestyle
|
||||||
|
homepage.name: Immich Public Proxy
|
||||||
|
homepage.href: https://pics.${MY_TLD}/tools
|
||||||
|
homepage.icon: sh-immich-power-tools.png
|
||||||
|
homepage.description: Tools for Immich
|
||||||
ports:
|
ports:
|
||||||
- 54018:3000
|
- 54018:3000
|
||||||
|
restart: unless-stopped
|
||||||
influxdb2:
|
influxdb2:
|
||||||
container_name: influxdb2
|
container_name: influxdb2
|
||||||
environment:
|
environment:
|
||||||
@@ -2057,6 +2030,7 @@ services:
|
|||||||
homepage.description: Scalable datastore for metrics, events, and real-time analytics
|
homepage.description: Scalable datastore for metrics, events, and real-time analytics
|
||||||
ports:
|
ports:
|
||||||
- 8086:8086
|
- 8086:8086
|
||||||
|
restart: unless-stopped
|
||||||
volumes:
|
volumes:
|
||||||
- influxdb2-data:/var/lib/influxdb2
|
- influxdb2-data:/var/lib/influxdb2
|
||||||
- influxdb2-config:/etc/influxdb2
|
- influxdb2-config:/etc/influxdb2
|
||||||
@@ -2135,8 +2109,8 @@ services:
|
|||||||
type: bind
|
type: bind
|
||||||
bind:
|
bind:
|
||||||
create_host_path: true
|
create_host_path: true
|
||||||
invoice_ninja:
|
invoice-ninja:
|
||||||
container_name: invoice_ninja
|
container_name: invoice-ninja
|
||||||
depends_on:
|
depends_on:
|
||||||
mariadb:
|
mariadb:
|
||||||
condition: service_started
|
condition: service_started
|
||||||
@@ -2172,7 +2146,7 @@ services:
|
|||||||
TRUSTED_PROXIES: 172.18.0.0/16
|
TRUSTED_PROXIES: 172.18.0.0/16
|
||||||
expose:
|
expose:
|
||||||
- 9000
|
- 9000
|
||||||
image: invoiceninja/invoiceninja:5
|
image: invoiceninja/invoiceninja-debian:5
|
||||||
networks:
|
networks:
|
||||||
default: null
|
default: null
|
||||||
ports:
|
ports:
|
||||||
@@ -2182,32 +2156,17 @@ services:
|
|||||||
target: 8003
|
target: 8003
|
||||||
restart: always
|
restart: always
|
||||||
volumes:
|
volumes:
|
||||||
- source: ${DOCKER_VOLUME_CONFIG}/invoice-ninja/app/public
|
- ${DOCKER_VOLUME_CONFIG}/invoice-ninja/invoice-ninja.env:/var/www/html/.env
|
||||||
target: /var/www/app/public
|
- invoice-ninja_cache:/var/www/html/bootstrap/cache
|
||||||
type: bind
|
- invoice-ninja_public:/var/www/html/public
|
||||||
bind:
|
- invoice-ninja_storage:/var/www/html/storage
|
||||||
create_host_path: true
|
invoice-ninja_proxy:
|
||||||
- source: ${DOCKER_VOLUME_CONFIG}/invoice-ninja/app/storage
|
container_name: invoice-ninja_proxy
|
||||||
target: /var/www/app/storage
|
|
||||||
type: bind
|
|
||||||
bind:
|
|
||||||
create_host_path: true
|
|
||||||
- source: ${DOCKER_VOLUME_CONFIG}/invoice-ninja/php/php.ini
|
|
||||||
target: /usr/local/etc/php/php.ini
|
|
||||||
type: bind
|
|
||||||
bind:
|
|
||||||
create_host_path: true
|
|
||||||
- source: ${DOCKER_VOLUME_CONFIG}/invoice-ninja/php/php-cli.ini
|
|
||||||
target: /usr/local/etc/php/php-cli.ini
|
|
||||||
type: bind
|
|
||||||
bind:
|
|
||||||
create_host_path: true
|
|
||||||
invoice_ninja_proxy:
|
|
||||||
container_name: invoice_ninja_proxy
|
|
||||||
depends_on:
|
depends_on:
|
||||||
invoice_ninja:
|
invoice-ninja:
|
||||||
condition: service_started
|
condition: service_started
|
||||||
required: true
|
required: true
|
||||||
|
restart: true
|
||||||
environment:
|
environment:
|
||||||
APP_DEBUG: true
|
APP_DEBUG: true
|
||||||
APP_KEY: ${IN_APP_KEY}
|
APP_KEY: ${IN_APP_KEY}
|
||||||
@@ -3668,6 +3627,41 @@ services:
|
|||||||
target: /var/lib/postgresql/data
|
target: /var/lib/postgresql/data
|
||||||
type: volume
|
type: volume
|
||||||
volume: {}
|
volume: {}
|
||||||
|
netdata:
|
||||||
|
cap_add:
|
||||||
|
- SYS_PTRACE
|
||||||
|
- SYS_ADMIN
|
||||||
|
container_name: netdata
|
||||||
|
environment:
|
||||||
|
DOCKER_HOST: tcp://dockerproxy:2375
|
||||||
|
image: netdata/netdata:stable
|
||||||
|
labels:
|
||||||
|
homepage.widget.type: netdata
|
||||||
|
homepage.widget.url: http://netdata:19999
|
||||||
|
swag: enable
|
||||||
|
swag_port: 19999
|
||||||
|
swag_proto: http
|
||||||
|
swag_url: netdata.${MY_TLD}
|
||||||
|
swag.uptime-kuma.enabled: true
|
||||||
|
swag.uptime-kuma.monitor.url: https://netdata.${MY_TLD}
|
||||||
|
pid: host
|
||||||
|
ports:
|
||||||
|
- 19999:19999
|
||||||
|
restart: unless-stopped
|
||||||
|
security_opt:
|
||||||
|
- apparmor:unconfined
|
||||||
|
volumes:
|
||||||
|
- ${DOCKER_VOLUME_CONFIG}/netdata:/etc/netdata
|
||||||
|
- netdata-lib:/var/lib/netdata
|
||||||
|
- netdata-cache:/var/cache/netdata
|
||||||
|
- /:/host/root:ro,rslave
|
||||||
|
- /etc/passwd:/host/etc/passwd:ro
|
||||||
|
- /etc/group:/host/etc/group:ro
|
||||||
|
- /etc/localtime:/etc/localtime:ro
|
||||||
|
- /proc:/host/proc:ro
|
||||||
|
- /sys:/host/sys:ro
|
||||||
|
- /etc/os-release:/host/etc/os-release:ro
|
||||||
|
- /var/log:/host/var/log:ro
|
||||||
nextcloud:
|
nextcloud:
|
||||||
container_name: nextcloud-aio-mastercontainer
|
container_name: nextcloud-aio-mastercontainer
|
||||||
environment:
|
environment:
|
||||||
@@ -3965,6 +3959,10 @@ services:
|
|||||||
homepage.href: https://portainer.${MY_TLD}
|
homepage.href: https://portainer.${MY_TLD}
|
||||||
homepage.icon: portainer.svg
|
homepage.icon: portainer.svg
|
||||||
homepage.description: Service delivery platform for containerized applications
|
homepage.description: Service delivery platform for containerized applications
|
||||||
|
homepage.widget.type: portainer
|
||||||
|
homepage.widget.url: http://portainer:9000
|
||||||
|
homepage.widget.env: 20
|
||||||
|
homepage.widget.key: ${PORTAINER_HOMEPAGE_TOKEN}
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
volumes:
|
volumes:
|
||||||
- portainer-data:/data
|
- portainer-data:/data
|
||||||
@@ -6629,267 +6627,267 @@ services:
|
|||||||
source: /var/run/docker.sock
|
source: /var/run/docker.sock
|
||||||
target: /var/run/docker.sock
|
target: /var/run/docker.sock
|
||||||
type: bind
|
type: bind
|
||||||
wazuh-agent:
|
# wazuh-agent:
|
||||||
container_name: wazuh.agent
|
# container_name: wazuh.agent
|
||||||
environment:
|
# environment:
|
||||||
JOIN_MANAGER_PROTOCOL: https
|
# JOIN_MANAGER_PROTOCOL: https
|
||||||
JOIN_MANAGER_MASTER_HOST: wazuh.manager
|
# JOIN_MANAGER_MASTER_HOST: wazuh.manager
|
||||||
JOIN_MANAGER_WORKER_HOST: wazuh.manager
|
# JOIN_MANAGER_WORKER_HOST: wazuh.manager
|
||||||
JOIN_MANAGER_USER: wazuh-wui
|
# JOIN_MANAGER_USER: wazuh-wui
|
||||||
JOIN_MANAGER_PASSWORD: ${WAZUH_API_PASSWORD}
|
# JOIN_MANAGER_PASSWORD: ${WAZUH_API_PASSWORD}
|
||||||
JOIN_MANAGER_API_PORT: 55000
|
# JOIN_MANAGER_API_PORT: 55000
|
||||||
JOIN_MANAGER_PORT: 1514
|
# JOIN_MANAGER_PORT: 1514
|
||||||
VIRUS_TOTAL_KEY: ${VIRUS_TOTAL_API_KEY}
|
# VIRUS_TOTAL_KEY: ${VIRUS_TOTAL_API_KEY}
|
||||||
DOCKER_HOST: tcp://dockerproxy:2375
|
# DOCKER_HOST: tcp://dockerproxy:2375
|
||||||
hostname: wazuh.agent
|
# hostname: wazuh.agent
|
||||||
image: kennyopennix/wazuh-agent:latest
|
# image: kennyopennix/wazuh-agent:latest
|
||||||
networks:
|
# networks:
|
||||||
default: null
|
# default: null
|
||||||
restart: unless-stopped
|
# restart: unless-stopped
|
||||||
wazuh-dashboard:
|
# wazuh-dashboard:
|
||||||
container_name: wazuh-dashboard
|
# container_name: wazuh-dashboard
|
||||||
depends_on:
|
# depends_on:
|
||||||
wazuh-indexer:
|
# wazuh-indexer:
|
||||||
condition: service_started
|
# condition: service_started
|
||||||
required: true
|
# required: true
|
||||||
wazuh-manager:
|
# wazuh-manager:
|
||||||
condition: service_started
|
# condition: service_started
|
||||||
required: true
|
# required: true
|
||||||
restart: true
|
# restart: true
|
||||||
environment:
|
# environment:
|
||||||
INDEXER_USERNAME: admin
|
# INDEXER_USERNAME: admin
|
||||||
INDEXER_PASSWORD: ${WAZUH_INDEXER_PASSWORD}
|
# INDEXER_PASSWORD: ${WAZUH_INDEXER_PASSWORD}
|
||||||
WAZUH_API_URL: https://wazuh.manager
|
# WAZUH_API_URL: https://wazuh.manager
|
||||||
DASHBOARD_USERNAME: kibanaserver
|
# DASHBOARD_USERNAME: kibanaserver
|
||||||
DASHBOARD_PASSWORD: ${WAZUH_KIBANA_PASSWORD}
|
# DASHBOARD_PASSWORD: ${WAZUH_KIBANA_PASSWORD}
|
||||||
API_USERNAME: wazuh-wui
|
# API_USERNAME: wazuh-wui
|
||||||
API_PASSWORD: ${WAZUH_API_PASSWORD}
|
# API_PASSWORD: ${WAZUH_API_PASSWORD}
|
||||||
hostname: wazuh-dashboard
|
# hostname: wazuh-dashboard
|
||||||
image: wazuh/wazuh-dashboard:${WAZUH_VERSION}
|
# image: wazuh/wazuh-dashboard:${WAZUH_VERSION}
|
||||||
labels:
|
# labels:
|
||||||
swag: enable
|
# swag: enable
|
||||||
swag_proto: https
|
# swag_proto: https
|
||||||
swag_port: 5601
|
# swag_port: 5601
|
||||||
swag_url: wsec.${MY_TLD}
|
# swag_url: wsec.${MY_TLD}
|
||||||
swag.uptime-kuma.enabled: true
|
# swag.uptime-kuma.enabled: true
|
||||||
swag.uptime-kuma.monitor.url: https://wsec.${MY_TLD}
|
# swag.uptime-kuma.monitor.url: https://wsec.${MY_TLD}
|
||||||
homepage.group: Privacy/Security
|
# homepage.group: Privacy/Security
|
||||||
homepage.name: Wazuh
|
# homepage.name: Wazuh
|
||||||
homepage.href: https://wsec.${MY_TLD}
|
# homepage.href: https://wsec.${MY_TLD}
|
||||||
homepage.icon: wazuh.svg
|
# homepage.icon: wazuh.svg
|
||||||
homepage.description: OSS Security Platform for XDR/SIEM
|
# homepage.description: OSS Security Platform for XDR/SIEM
|
||||||
links:
|
# links:
|
||||||
- wazuh-indexer:wazuh-indexer
|
# - wazuh-indexer:wazuh-indexer
|
||||||
- wazuh-manager:wazuh-manager
|
# - wazuh-manager:wazuh-manager
|
||||||
networks:
|
# networks:
|
||||||
default: null
|
# default: null
|
||||||
ports:
|
# ports:
|
||||||
- mode: ingress
|
# - mode: ingress
|
||||||
protocol: tcp
|
# protocol: tcp
|
||||||
published: "5601"
|
# published: "5601"
|
||||||
target: 5601
|
# target: 5601
|
||||||
restart: always
|
# restart: always
|
||||||
volumes:
|
# volumes:
|
||||||
- source: ${DOCKER_VOLUME_CONFIG}/wazuh/generator/wazuh.dashboard.pem
|
# - source: ${DOCKER_VOLUME_CONFIG}/wazuh/generator/wazuh.dashboard.pem
|
||||||
target: /usr/share/wazuh-dashboard/certs/wazuh-dashboard.pem
|
# target: /usr/share/wazuh-dashboard/certs/wazuh-dashboard.pem
|
||||||
type: bind
|
# type: bind
|
||||||
bind:
|
# bind:
|
||||||
create_host_path: true
|
# create_host_path: true
|
||||||
- source: ${DOCKER_VOLUME_CONFIG}/wazuh/generator/wazuh.dashboard-key.pem
|
# - source: ${DOCKER_VOLUME_CONFIG}/wazuh/generator/wazuh.dashboard-key.pem
|
||||||
target: /usr/share/wazuh-dashboard/certs/wazuh-dashboard-key.pem
|
# target: /usr/share/wazuh-dashboard/certs/wazuh-dashboard-key.pem
|
||||||
type: bind
|
# type: bind
|
||||||
bind:
|
# bind:
|
||||||
create_host_path: true
|
# create_host_path: true
|
||||||
- source: ${DOCKER_VOLUME_CONFIG}/wazuh/generator/root-ca.pem
|
# - source: ${DOCKER_VOLUME_CONFIG}/wazuh/generator/root-ca.pem
|
||||||
target: /usr/share/wazuh-dashboard/certs/root-ca.pem
|
# target: /usr/share/wazuh-dashboard/certs/root-ca.pem
|
||||||
type: bind
|
# type: bind
|
||||||
bind:
|
# bind:
|
||||||
create_host_path: true
|
# create_host_path: true
|
||||||
- source: ${DOCKER_VOLUME_CONFIG}/wazuh/dashboard/opensearch_dashboards.yml
|
# - source: ${DOCKER_VOLUME_CONFIG}/wazuh/dashboard/opensearch_dashboards.yml
|
||||||
target: /usr/share/wazuh-dashboard/config/opensearch_dashboards.yml
|
# target: /usr/share/wazuh-dashboard/config/opensearch_dashboards.yml
|
||||||
type: bind
|
# type: bind
|
||||||
bind:
|
# bind:
|
||||||
create_host_path: true
|
# create_host_path: true
|
||||||
- source: ${DOCKER_VOLUME_CONFIG}/wazuh/dashboard/wazuh.yml
|
# - source: ${DOCKER_VOLUME_CONFIG}/wazuh/dashboard/wazuh.yml
|
||||||
target: /usr/share/wazuh-dashboard/data/wazuh/config/wazuh.yml
|
# target: /usr/share/wazuh-dashboard/data/wazuh/config/wazuh.yml
|
||||||
type: bind
|
# type: bind
|
||||||
bind:
|
# bind:
|
||||||
create_host_path: true
|
# create_host_path: true
|
||||||
- source: wazuh-dashboard-config
|
# - source: wazuh-dashboard-config
|
||||||
target: /usr/share/wazuh-dashboard/data/wazuh/config
|
# target: /usr/share/wazuh-dashboard/data/wazuh/config
|
||||||
type: volume
|
# type: volume
|
||||||
volume: {}
|
# volume: {}
|
||||||
- source: wazuh-dashboard-custom
|
# - source: wazuh-dashboard-custom
|
||||||
target: /usr/share/wazuh-dashboard/plugins/wazuh/public/assets/custom
|
# target: /usr/share/wazuh-dashboard/plugins/wazuh/public/assets/custom
|
||||||
type: volume
|
# type: volume
|
||||||
volume: {}
|
# volume: {}
|
||||||
wazuh-indexer:
|
# wazuh-indexer:
|
||||||
container_name: wazuh-indexer
|
# container_name: wazuh-indexer
|
||||||
environment:
|
# environment:
|
||||||
OPENSEARCH_JAVA_OPTS: -Xms512m -Xmx512m
|
# OPENSEARCH_JAVA_OPTS: -Xms512m -Xmx512m
|
||||||
hostname: wazuh-indexer
|
# hostname: wazuh-indexer
|
||||||
image: wazuh/wazuh-indexer:${WAZUH_VERSION}
|
# image: wazuh/wazuh-indexer:${WAZUH_VERSION}
|
||||||
networks:
|
# networks:
|
||||||
default: null
|
# default: null
|
||||||
ports:
|
# ports:
|
||||||
- mode: ingress
|
# - mode: ingress
|
||||||
protocol: tcp
|
# protocol: tcp
|
||||||
published: "9200"
|
# published: "9200"
|
||||||
target: 9200
|
# target: 9200
|
||||||
restart: always
|
# restart: always
|
||||||
ulimits:
|
# ulimits:
|
||||||
memlock:
|
# memlock:
|
||||||
hard: -1
|
# hard: -1
|
||||||
soft: -1
|
# soft: -1
|
||||||
nofile:
|
# nofile:
|
||||||
hard: 65536
|
# hard: 65536
|
||||||
soft: 65536
|
# soft: 65536
|
||||||
volumes:
|
# volumes:
|
||||||
- source: wazuh-indexer-data
|
# - source: wazuh-indexer-data
|
||||||
target: /var/lib/wazuh-indexer
|
# target: /var/lib/wazuh-indexer
|
||||||
type: volume
|
# type: volume
|
||||||
volume: {}
|
# volume: {}
|
||||||
- source: ${DOCKER_VOLUME_CONFIG}/wazuh/generator/root-ca.pem
|
# - source: ${DOCKER_VOLUME_CONFIG}/wazuh/generator/root-ca.pem
|
||||||
target: /usr/share/wazuh-indexer/certs/root-ca.pem
|
# target: /usr/share/wazuh-indexer/certs/root-ca.pem
|
||||||
type: bind
|
# type: bind
|
||||||
bind:
|
# bind:
|
||||||
create_host_path: true
|
# create_host_path: true
|
||||||
- source: ${DOCKER_VOLUME_CONFIG}/wazuh/generator/wazuh.indexer-key.pem
|
# - source: ${DOCKER_VOLUME_CONFIG}/wazuh/generator/wazuh.indexer-key.pem
|
||||||
target: /usr/share/wazuh-indexer/certs/wazuh.indexer.key
|
# target: /usr/share/wazuh-indexer/certs/wazuh.indexer.key
|
||||||
type: bind
|
# type: bind
|
||||||
bind:
|
# bind:
|
||||||
create_host_path: true
|
# create_host_path: true
|
||||||
- source: ${DOCKER_VOLUME_CONFIG}/wazuh/generator/wazuh.indexer.pem
|
# - source: ${DOCKER_VOLUME_CONFIG}/wazuh/generator/wazuh.indexer.pem
|
||||||
target: /usr/share/wazuh-indexer/certs/wazuh.indexer.pem
|
# target: /usr/share/wazuh-indexer/certs/wazuh.indexer.pem
|
||||||
type: bind
|
# type: bind
|
||||||
bind:
|
# bind:
|
||||||
create_host_path: true
|
# create_host_path: true
|
||||||
- source: ${DOCKER_VOLUME_CONFIG}/wazuh/generator/admin.pem
|
# - source: ${DOCKER_VOLUME_CONFIG}/wazuh/generator/admin.pem
|
||||||
target: /usr/share/wazuh-indexer/certs/admin.pem
|
# target: /usr/share/wazuh-indexer/certs/admin.pem
|
||||||
type: bind
|
# type: bind
|
||||||
bind:
|
# bind:
|
||||||
create_host_path: true
|
# create_host_path: true
|
||||||
- source: ${DOCKER_VOLUME_CONFIG}/wazuh/generator/admin-key.pem
|
# - source: ${DOCKER_VOLUME_CONFIG}/wazuh/generator/admin-key.pem
|
||||||
target: /usr/share/wazuh-indexer/certs/admin-key.pem
|
# target: /usr/share/wazuh-indexer/certs/admin-key.pem
|
||||||
type: bind
|
# type: bind
|
||||||
bind:
|
# bind:
|
||||||
create_host_path: true
|
# create_host_path: true
|
||||||
- source: ${DOCKER_VOLUME_CONFIG}/wazuh/indexer/wazuh.indexer.yml
|
# - source: ${DOCKER_VOLUME_CONFIG}/wazuh/indexer/wazuh.indexer.yml
|
||||||
target: /usr/share/wazuh-indexer/opensearch.yml
|
# target: /usr/share/wazuh-indexer/opensearch.yml
|
||||||
type: bind
|
# type: bind
|
||||||
bind:
|
# bind:
|
||||||
create_host_path: true
|
# create_host_path: true
|
||||||
- source: ${DOCKER_VOLUME_CONFIG}/wazuh/indexer/internal_users.yml
|
# - source: ${DOCKER_VOLUME_CONFIG}/wazuh/indexer/internal_users.yml
|
||||||
target: /usr/share/wazuh-indexer/opensearch-security/internal_users.yml
|
# target: /usr/share/wazuh-indexer/opensearch-security/internal_users.yml
|
||||||
type: bind
|
# type: bind
|
||||||
bind:
|
# bind:
|
||||||
create_host_path: true
|
# create_host_path: true
|
||||||
wazuh-manager:
|
# wazuh-manager:
|
||||||
container_name: wazuh-manager
|
# container_name: wazuh-manager
|
||||||
environment:
|
# environment:
|
||||||
INDEXER_URL: https://wazuh.indexer:9200
|
# INDEXER_URL: https://wazuh.indexer:9200
|
||||||
INDEXER_USERNAME: admin
|
# INDEXER_USERNAME: admin
|
||||||
INDEXER_PASSWORD: ${WAZUH_INDEXER_PASSWORD}
|
# INDEXER_PASSWORD: ${WAZUH_INDEXER_PASSWORD}
|
||||||
FILEBEAT_SSL_VERIFICATION_MODE: full
|
# FILEBEAT_SSL_VERIFICATION_MODE: full
|
||||||
SSL_CERTIFICATE_AUTHORITIES: /etc/ssl/root-ca.pem
|
# SSL_CERTIFICATE_AUTHORITIES: /etc/ssl/root-ca.pem
|
||||||
SSL_CERTIFICATE: /etc/ssl/filebeat.pem
|
# SSL_CERTIFICATE: /etc/ssl/filebeat.pem
|
||||||
SSL_KEY: /etc/ssl/filebeat.key
|
# SSL_KEY: /etc/ssl/filebeat.key
|
||||||
API_USERNAME: wazuh-wui
|
# API_USERNAME: wazuh-wui
|
||||||
API_PASSWORD: ${WAZUH_API_PASSWORD}
|
# API_PASSWORD: ${WAZUH_API_PASSWORD}
|
||||||
hostname: wazuh-manager
|
# hostname: wazuh-manager
|
||||||
image: wazuh/wazuh-manager:${WAZUH_VERSION}
|
# image: wazuh/wazuh-manager:${WAZUH_VERSION}
|
||||||
networks:
|
# networks:
|
||||||
default: null
|
# default: null
|
||||||
ports:
|
# ports:
|
||||||
- mode: ingress
|
# - mode: ingress
|
||||||
protocol: tcp
|
# protocol: tcp
|
||||||
published: "1514"
|
# published: "1514"
|
||||||
target: 1514
|
# target: 1514
|
||||||
- mode: ingress
|
# - mode: ingress
|
||||||
protocol: tcp
|
# protocol: tcp
|
||||||
published: "1515"
|
# published: "1515"
|
||||||
target: 1515
|
# target: 1515
|
||||||
- mode: ingress
|
# - mode: ingress
|
||||||
protocol: udp
|
# protocol: udp
|
||||||
published: "514"
|
# published: "514"
|
||||||
target: 514
|
# target: 514
|
||||||
- mode: ingress
|
# - mode: ingress
|
||||||
protocol: tcp
|
# protocol: tcp
|
||||||
published: "55000"
|
# published: "55000"
|
||||||
target: 55000
|
# target: 55000
|
||||||
restart: always
|
# restart: always
|
||||||
ulimits:
|
# ulimits:
|
||||||
memlock:
|
# memlock:
|
||||||
hard: -1
|
# hard: -1
|
||||||
soft: -1
|
# soft: -1
|
||||||
nofile:
|
# nofile:
|
||||||
hard: 655360
|
# hard: 655360
|
||||||
soft: 655360
|
# soft: 655360
|
||||||
volumes:
|
# volumes:
|
||||||
- source: wazuh_api_configuration
|
# - source: wazuh_api_configuration
|
||||||
target: /var/ossec/api/configuration
|
# target: /var/ossec/api/configuration
|
||||||
type: volume
|
# type: volume
|
||||||
volume: {}
|
# volume: {}
|
||||||
- source: wazuh_etc
|
# - source: wazuh_etc
|
||||||
target: /var/ossec/etc
|
# target: /var/ossec/etc
|
||||||
type: volume
|
# type: volume
|
||||||
volume: {}
|
# volume: {}
|
||||||
- source: wazuh_logs
|
# - source: wazuh_logs
|
||||||
target: /var/ossec/logs
|
# target: /var/ossec/logs
|
||||||
type: volume
|
# type: volume
|
||||||
volume: {}
|
# volume: {}
|
||||||
- source: wazuh_queue
|
# - source: wazuh_queue
|
||||||
target: /var/ossec/queue
|
# target: /var/ossec/queue
|
||||||
type: volume
|
# type: volume
|
||||||
volume: {}
|
# volume: {}
|
||||||
- source: wazuh_var_multigroups
|
# - source: wazuh_var_multigroups
|
||||||
target: /var/ossec/var/multigroups
|
# target: /var/ossec/var/multigroups
|
||||||
type: volume
|
# type: volume
|
||||||
volume: {}
|
# volume: {}
|
||||||
- source: wazuh_integrations
|
# - source: wazuh_integrations
|
||||||
target: /var/ossec/integrations
|
# target: /var/ossec/integrations
|
||||||
type: volume
|
# type: volume
|
||||||
volume: {}
|
# volume: {}
|
||||||
- source: wazuh_active_response
|
# - source: wazuh_active_response
|
||||||
target: /var/ossec/active-response/bin
|
# target: /var/ossec/active-response/bin
|
||||||
type: volume
|
# type: volume
|
||||||
volume: {}
|
# volume: {}
|
||||||
- source: wazuh_agentless
|
# - source: wazuh_agentless
|
||||||
target: /var/ossec/agentless
|
# target: /var/ossec/agentless
|
||||||
type: volume
|
# type: volume
|
||||||
volume: {}
|
# volume: {}
|
||||||
- source: wazuh_wodles
|
# - source: wazuh_wodles
|
||||||
target: /var/ossec/wodles
|
# target: /var/ossec/wodles
|
||||||
type: volume
|
# type: volume
|
||||||
volume: {}
|
# volume: {}
|
||||||
- source: filebeat_etc
|
# - source: filebeat_etc
|
||||||
target: /etc/filebeat
|
# target: /etc/filebeat
|
||||||
type: volume
|
# type: volume
|
||||||
volume: {}
|
# volume: {}
|
||||||
- source: filebeat_var
|
# - source: filebeat_var
|
||||||
target: /var/lib/filebeat
|
# target: /var/lib/filebeat
|
||||||
type: volume
|
# type: volume
|
||||||
volume: {}
|
# volume: {}
|
||||||
- source: ${DOCKER_VOLUME_CONFIG}/wazuh/generator/root-ca.pem
|
# - source: ${DOCKER_VOLUME_CONFIG}/wazuh/generator/root-ca.pem
|
||||||
target: /etc/ssl/root-ca.pem
|
# target: /etc/ssl/root-ca.pem
|
||||||
type: bind
|
# type: bind
|
||||||
bind:
|
# bind:
|
||||||
create_host_path: true
|
# create_host_path: true
|
||||||
- source: ${DOCKER_VOLUME_CONFIG}/wazuh/generator/wazuh.manager.pem
|
# - source: ${DOCKER_VOLUME_CONFIG}/wazuh/generator/wazuh.manager.pem
|
||||||
target: /etc/ssl/filebeat.pem
|
# target: /etc/ssl/filebeat.pem
|
||||||
type: bind
|
# type: bind
|
||||||
bind:
|
# bind:
|
||||||
create_host_path: true
|
# create_host_path: true
|
||||||
- source: ${DOCKER_VOLUME_CONFIG}/wazuh/generator/wazuh.manager-key.pem
|
# - source: ${DOCKER_VOLUME_CONFIG}/wazuh/generator/wazuh.manager-key.pem
|
||||||
target: /etc/ssl/filebeat.key
|
# target: /etc/ssl/filebeat.key
|
||||||
type: bind
|
# type: bind
|
||||||
bind:
|
# bind:
|
||||||
create_host_path: true
|
# create_host_path: true
|
||||||
- source: ${DOCKER_VOLUME_CONFIG}/wazuh/manager/wazuh_manager.conf
|
# - source: ${DOCKER_VOLUME_CONFIG}/wazuh/manager/wazuh_manager.conf
|
||||||
target: /wazuh-config-mount/etc/ossec.conf
|
# target: /wazuh-config-mount/etc/ossec.conf
|
||||||
type: bind
|
# type: bind
|
||||||
bind:
|
# bind:
|
||||||
create_host_path: true
|
# create_host_path: true
|
||||||
web-check:
|
web-check:
|
||||||
container_name: web-check
|
container_name: web-check
|
||||||
image: lissy93/web-check
|
image: lissy93/web-check
|
||||||
@@ -7445,8 +7443,12 @@ volumes:
|
|||||||
name: influxdb2-config
|
name: influxdb2-config
|
||||||
invidious-postgres:
|
invidious-postgres:
|
||||||
name: invidious-postgres
|
name: invidious-postgres
|
||||||
invoice_ninja_public:
|
invoice-ninja_cache:
|
||||||
name: invoice_ninja_public
|
name: invoice-ninja_cache
|
||||||
|
invoice-ninja_public:
|
||||||
|
name: invoice-ninja_public
|
||||||
|
invoice-ninja_storage:
|
||||||
|
name: invoice-ninja_storage
|
||||||
jitsi-web-admin-theme:
|
jitsi-web-admin-theme:
|
||||||
name: jitsi-web-admin-theme
|
name: jitsi-web-admin-theme
|
||||||
jitsi-web-admin-upload:
|
jitsi-web-admin-upload:
|
||||||
@@ -7473,6 +7475,10 @@ volumes:
|
|||||||
name: netbird-letsencrypt
|
name: netbird-letsencrypt
|
||||||
netbox-pg-db:
|
netbox-pg-db:
|
||||||
name: netbox-pg-db
|
name: netbox-pg-db
|
||||||
|
netdata-cache:
|
||||||
|
name: netdata-cache
|
||||||
|
netdata-lib:
|
||||||
|
name: netdata-lib
|
||||||
nextcloud_aio_mastercontainer:
|
nextcloud_aio_mastercontainer:
|
||||||
name: nextcloud_aio_mastercontainer
|
name: nextcloud_aio_mastercontainer
|
||||||
ollama:
|
ollama:
|
||||||
|
|||||||
-7589
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user