всё кроме npm(db)
This commit is contained in:
@@ -1,103 +0,0 @@
|
|||||||
# docker‑compose.yml (версия 3.8 – поддерживает named volumes и сетевые настройки)
|
|
||||||
version: "3.8"
|
|
||||||
|
|
||||||
services:
|
|
||||||
synapse:
|
|
||||||
image: matrixdotorg/synapse:latest
|
|
||||||
container_name: matrix_synapse
|
|
||||||
environment:
|
|
||||||
- SYNAPSE_SERVER_NAME=matrix.emsdata.ru
|
|
||||||
- SYNAPSE_REPORT_STATS=no
|
|
||||||
- TZ=Asia/Vladivostok
|
|
||||||
ports:
|
|
||||||
- "8008:8008" # HTTP (без TLS), используемый 뒤 federation/client API
|
|
||||||
- "8448:8448" # блок federation HTTPS (если понадобилось позже)
|
|
||||||
volumes:
|
|
||||||
- synapse_data:/data
|
|
||||||
restart: unless-stopped
|
|
||||||
|
|
||||||
drawio:
|
|
||||||
image: jgraph/drawio:latest
|
|
||||||
container_name: drawio
|
|
||||||
ports:
|
|
||||||
- "8080:8080" # Draw.io в браузере: http://host:8080
|
|
||||||
restart: unless-stopped
|
|
||||||
|
|
||||||
static-nginx:
|
|
||||||
image: nginx:alpine
|
|
||||||
container_name: nginx_static
|
|
||||||
ports:
|
|
||||||
- "8081:8081" # простой статический nginx без монтирования – откроется дефолтный index
|
|
||||||
restart: unless-stopped
|
|
||||||
|
|
||||||
npm-app:
|
|
||||||
image: 'jc21/nginx-proxy-manager:latest'
|
|
||||||
restart: unless-stopped
|
|
||||||
ports:
|
|
||||||
# These ports are in format <host-port>:<container-port>
|
|
||||||
- '80:80' # Public HTTP Port
|
|
||||||
- '443:443' # Public HTTPS Port
|
|
||||||
- '81:81' # Admin Web Port
|
|
||||||
# Add any other Stream port you want to expose
|
|
||||||
# - '21:21' # FTP
|
|
||||||
environment:
|
|
||||||
# Mysql/Maria connection parameters:
|
|
||||||
DB_MYSQL_HOST: "db"
|
|
||||||
DB_MYSQL_PORT: 3306
|
|
||||||
DB_MYSQL_USER: "npm"
|
|
||||||
DB_MYSQL_PASSWORD: "npm"
|
|
||||||
DB_MYSQL_NAME: "npm"
|
|
||||||
# Uncomment this if IPv6 is not enabled on your host
|
|
||||||
# DISABLE_IPV6: 'true'
|
|
||||||
volumes:
|
|
||||||
- ./npm_data:/data
|
|
||||||
- ./npm_letsencrypt:/etc/letsencrypt
|
|
||||||
depends_on:
|
|
||||||
- db
|
|
||||||
|
|
||||||
db:
|
|
||||||
image: 'jc21/mariadb-aria:latest'
|
|
||||||
restart: unless-stopped
|
|
||||||
environment:
|
|
||||||
MYSQL_ROOT_PASSWORD: 'npm'
|
|
||||||
MYSQL_DATABASE: 'npm'
|
|
||||||
MYSQL_USER: 'npm'
|
|
||||||
MYSQL_PASSWORD: 'npm'
|
|
||||||
MARIADB_AUTO_UPGRADE: '1'
|
|
||||||
volumes:
|
|
||||||
- ./mysql:/var/lib/mysql
|
|
||||||
|
|
||||||
gitea:
|
|
||||||
image: gitea/gitea:latest
|
|
||||||
container_name: gitea
|
|
||||||
environment:
|
|
||||||
- USER_UID=1000
|
|
||||||
- USER_GID=1000
|
|
||||||
volumes:
|
|
||||||
- ./gitea/data:/data
|
|
||||||
ports:
|
|
||||||
- "3000:3000"
|
|
||||||
- "2222:22"
|
|
||||||
restart: unless-stopped
|
|
||||||
|
|
||||||
wireguard:
|
|
||||||
image: lscr.io/linuxserver/wireguard:latest
|
|
||||||
container_name: wireguard_vpn
|
|
||||||
cap_add:
|
|
||||||
- NET_ADMIN
|
|
||||||
- SYS_MODULE
|
|
||||||
sysctls:
|
|
||||||
- net.ipv4.conf.all.src_valid_mark=1
|
|
||||||
ports:
|
|
||||||
- "51820:51820/udp"
|
|
||||||
volumes:
|
|
||||||
- wireguard_data:/config
|
|
||||||
restart: unless-stopped
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
synapse_data:
|
|
||||||
npm_data:
|
|
||||||
npm_letsencrypt:
|
|
||||||
wireguard_data:
|
|
||||||
nginx-site:
|
|
||||||
mysql:
|
|
||||||
@@ -28,21 +28,43 @@ services:
|
|||||||
container_name: nginx_static
|
container_name: nginx_static
|
||||||
ports:
|
ports:
|
||||||
- "8081:8081" # простой статический nginx без монтирования – откроется дефолтный index
|
- "8081:8081" # простой статический nginx без монтирования – откроется дефолтный index
|
||||||
volumes:
|
|
||||||
- ./nginx-site:/usr/share/nginx/html:ro
|
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
npm-app:
|
npm-app:
|
||||||
image: jc21/nginx-proxy-manager:latest
|
image: 'jc21/nginx-proxy-manager:latest'
|
||||||
container_name: nginx_proxy_manager
|
|
||||||
ports:
|
|
||||||
- "81:81" # админка (login: admin@example.com / password: changeme)
|
|
||||||
- "80:80" # http proxy
|
|
||||||
- "443:443" # https proxy
|
|
||||||
volumes:
|
|
||||||
- npm_data:/data
|
|
||||||
- npm_letsencrypt:/etc/letsencrypt
|
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
ports:
|
||||||
|
# These ports are in format <host-port>:<container-port>
|
||||||
|
- '80:80' # Public HTTP Port
|
||||||
|
- '443:443' # Public HTTPS Port
|
||||||
|
- '81:81' # Admin Web Port
|
||||||
|
# Add any other Stream port you want to expose
|
||||||
|
# - '21:21' # FTP
|
||||||
|
environment:
|
||||||
|
# Mysql/Maria connection parameters:
|
||||||
|
DB_MYSQL_HOST: "docker-db-1"
|
||||||
|
DB_MYSQL_PORT: 3306
|
||||||
|
DB_MYSQL_USER: ${db_user}
|
||||||
|
DB_MYSQL_PASSWORD: ${db_password}
|
||||||
|
DB_MYSQL_NAME: "npm"
|
||||||
|
# Uncomment this if IPv6 is not enabled on your host
|
||||||
|
# DISABLE_IPV6: 'true'
|
||||||
|
volumes:
|
||||||
|
- ./npm_data:/data
|
||||||
|
- ./npm_letsencrypt:/etc/letsencrypt
|
||||||
|
depends_on:
|
||||||
|
- db
|
||||||
|
|
||||||
|
db:
|
||||||
|
image: 'jc21/mariadb-aria:latest'
|
||||||
|
restart: unless-stopped
|
||||||
|
environment:
|
||||||
|
MYSQL_DATABASE: 'npm'
|
||||||
|
MYSQL_USER: ${db_user}
|
||||||
|
MYSQL_PASSWORD: ${db_password}
|
||||||
|
MARIADB_AUTO_UPGRADE: '1'
|
||||||
|
volumes:
|
||||||
|
- ./mysql:/var/lib/mysql
|
||||||
|
|
||||||
gitea:
|
gitea:
|
||||||
image: gitea/gitea:latest
|
image: gitea/gitea:latest
|
||||||
@@ -77,3 +99,4 @@ volumes:
|
|||||||
npm_letsencrypt:
|
npm_letsencrypt:
|
||||||
wireguard_data:
|
wireguard_data:
|
||||||
nginx-site:
|
nginx-site:
|
||||||
|
mysql:
|
||||||
|
|||||||
@@ -16,23 +16,20 @@
|
|||||||
src: first/docker-compose.yml
|
src: first/docker-compose.yml
|
||||||
dest: "{{ compose_dir }}/docker-compose.yml"
|
dest: "{{ compose_dir }}/docker-compose.yml"
|
||||||
|
|
||||||
# - name: Copy config.json for Element
|
- name: Copy .env
|
||||||
# copy:
|
copy:
|
||||||
# src: files/config.json
|
src: first/.env
|
||||||
# dest: "{{ compose_dir }}/element/config.json"
|
dest: "{{ compose_dir }}/.env"
|
||||||
# owner: "{{ ansible_user }}"
|
|
||||||
# group: "{{ ansible_user }}"
|
|
||||||
# mode: '0644'
|
|
||||||
# when: ansible_facts['os_family'] == "Debian"
|
|
||||||
- name: Pull package
|
- name: Pull package
|
||||||
command: docker compose pull
|
command: docker compose pull
|
||||||
args:
|
args:
|
||||||
chdir: "{{ compose_dir }}"
|
chdir: "{{ compose_dir }}"
|
||||||
|
|
||||||
- name: Generate synapse
|
#- name: Generate synapse
|
||||||
command: docker compose run --rm synapse generate
|
# command: docker compose run --rm synapse generate
|
||||||
args:
|
# args:
|
||||||
chdir: "{{ compose_dir }}"
|
# chdir: "{{ compose_dir }}"
|
||||||
|
|
||||||
- name: Launch docker-compose
|
- name: Launch docker-compose
|
||||||
command: docker compose up -d
|
command: docker compose up -d
|
||||||
|
|||||||
Reference in New Issue
Block a user