Compare commits

...

13 Commits

Author SHA1 Message Date
Enrique Morales 623f19b7df
Merge c5eb93e189 into a1708f6ab3 2023-10-15 18:50:40 -07:00
Lorenzo Carbonell a1708f6ab3
Pydio cells
Pydio cells
2023-10-15 08:45:42 +02:00
Lorenzo Carbonell ebafdb3de0
3000 2023-10-13 22:21:27 +02:00
Lorenzo Carbonell 7b8c013ad7
3003 2023-10-13 22:13:54 +02:00
Lorenzo Carbonell 6ab9ef03fe
fix 2023-10-13 22:01:19 +02:00
Lorenzo Carbonell 1d80a61656
clean 2023-10-13 21:57:11 +02:00
Lorenzo Carbonell 8dede28ef2
jellystat 2023-10-13 21:55:57 +02:00
Lorenzo Carbonell 4db8e136d7
portainer+traefik 2023-10-13 21:24:21 +02:00
Lorenzo Carbonell 393b58a0ce
http 2023-10-13 21:00:22 +02:00
Lorenzo Carbonell e71c3b3506
override 2023-10-13 20:54:15 +02:00
Lorenzo Carbonell 6f59f24d8a
override 2023-10-13 20:52:12 +02:00
Lorenzo Carbonell c0c626aea6
acme 2023-10-13 19:40:53 +02:00
Enrique Morales c5eb93e189 downgrade db container postgres version to 15 2023-09-16 23:46:13 +02:00
15 changed files with 160 additions and 18 deletions

9
cells/README.md Normal file
View File

@ -0,0 +1,9 @@
# Installation
```
git clone https://github.com/atareao/self-hosted.git
cd self-hosted/cells
cp sample.env .env
```
In `.env` change variables as you need

55
cells/docker-compose.yml Normal file
View File

@ -0,0 +1,55 @@
version: "3.7"
services:
cells:
image: pydio/cells:latest
container_name: cells
init: true
restart: unless-stopped
environment:
CELLS_SITE_NO_TLS: 1
CELLS_SITE_EXTERNAL: "https://${FQDN}"
networks:
- proxy
- internal
volumes:
- cellsdir:/var/cells
- data:/var/cells/data
labels:
- traefik.enable=true
- traefik.http.services.cells.loadbalancer.server.port=8080
- traefik.http.routers.cells.entrypoints=websecure
- traefik.http.routers.cells.rule=Host(`${FQDN}`)
- traefik.http.routers.cells.tls=true
- traefik.http.routers.cells.tls.certresolver=letsencrypt
mysql:
image: mysql:8
container_name: cells_mysql
init: true
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: "$MYSQL_ROOT_PASSWORD"
MYSQL_DATABASE: "$MYSQL_DATABASE"
MYSQL_USER: "$MYSQL_USER"
MYSQL_PASSWORD: "$MYSQL_PASSWORD"
command:
[
mysqld,
--character-set-server=utf8mb4,
--collation-server=utf8mb4_unicode_ci,
]
networks:
- internal
volumes:
- mysqldir:/var/lib/mysql
volumes:
cellsdir: {}
data: {}
mysqldir: {}
networks:
internal: {}
proxy:
external: true

5
cells/sample.env Normal file
View File

@ -0,0 +1,5 @@
FQDN=cells.tusitio.es
MYSQL_ROOT_PASSWORD=P@ssw0rd
MYSQL_DATABASE=cells
MYSQL_USER=pydio
MYSQL_PASSWORD=P@ssw0rd

View File

@ -12,7 +12,7 @@ services:
env_file:
- .env
db:
image: postgres:latest
image: postgres:15
init: true
restart: unless-stopped
env_file:

View File

@ -0,0 +1,5 @@
# Servidor jellyfin
# Instalación desde Portainer
Puedes ha

View File

@ -0,0 +1,26 @@
version: "3.7"
services:
jellyfin:
image: jellyfin/jellyfin
container_name: jellyfin
init: true
restart: unless-stopped
user: 1000:1000
volumes:
- config:/config
- cache:/cache
- media:/media
networks:
- proxy
labels:
- traefik.http.services.jellyfin.loadbalancer.server.port=8096
- traefik.http.routers.jellyfin.rule=Host(`${FQDN}`)
networks:
proxy:
external: true
volumes:
config: {}
cache: {}
media: {}

View File

@ -0,0 +1 @@
FQDN=jellyfin.tuservidor.es

View File

@ -0,0 +1,5 @@
# Servidor jellyfin
# Instalación desde Portainer
Puedes ha

View File

@ -0,0 +1,38 @@
version: "3.7"
services:
jellystat-db:
image: postgres:15.2
container_name: jellystat-db
init: true
environment:
POSTGRES_DB: "jfstat"
POSTGRES_USER: postgres
POSTGRES_PASSWORD: mypassword
volumes:
- postgres-data:/var/lib/postgresql/data # Mounting the volume
jellystat:
image: cyfershepard/jellystat:latest
container_name: jellystat
init: true
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: mypassword
POSTGRES_IP: jellystat-db
POSTGRES_PORT: 5432
JWT_SECRET: "my-secret-jwt-key"
volumes:
- backup-data:/app/backend/backup-data # Mounting the volume
labels:
- traefik.http.services.jellystat.loadbalancer.server.port=3000
- traefik.http.routers.jellystat.rule=Host(`${FQDN}`)
depends_on:
- jellystat-db
networks:
proxy:
external: true
volumes:
backup-data: {}
postgres-data: {}

View File

@ -0,0 +1 @@
FQDN=jellyfin.tuservidor.es

View File

@ -0,0 +1 @@
docker-compose.traefik.yml

View File

@ -1,20 +1,12 @@
version: '3'
version: "3.7"
services:
portainer:
networks:
- proxy
labels:
- traefik.enable=true
- traefik.http.services.portainer.loadbalancer.server.port=9000
- traefik.http.routers.portainer.entrypoints=web
- traefik.http.routers.portainer.rule=Host(`${FQDN}`)
- traefik.http.middlewares.portainer-https-redirect.redirectscheme.scheme=websecure
- traefik.http.routers.portainer.middlewares=portainer-https-redirect
- traefik.http.routers.portainer-secure.entrypoints=websecure
- traefik.http.routers.portainer-secure.rule=Host(`${FQDN}`)
- traefik.http.routers.portainer-secure.tls=true
- traefik.http.routers.portainer-secure.tls.certresolver=letsencrypt
networks:
proxy:

View File

@ -1,12 +1,15 @@
version: "3"
version: "3.7"
services:
portainer:
image: portainer/portainer-ce:alpine
container_name: portainer
command: -H unix:///var/run/docker.sock
init: true
restart: unless-stopped
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./data:/data
- data:/data
volumes:
data: {}

View File

@ -1 +1 @@
FQDN=https://portainer.tuservidor.es
FQDN=portainer.tuservidor.es

View File

@ -17,6 +17,11 @@ Change `FQDN` for your server in `.env`,
cp sample.env .env
```
Change permissions for `acme.json`,
```bash
chmod 600 ./config/acme.json
```
Generate credentials for your user,
@ -24,16 +29,12 @@ Generate credentials for your user,
htpasswd -nb usuario contraseña >> config/users.txt
```
Change the email for letsencrypt,
```bash
sed -i "s/tu@correo.es/<tu-correo>/g" config/traefik.yml
```
```bash
docker network create proxy
docker-compose up -d