Compare commits
13 Commits
58216e419b
...
623f19b7df
Author | SHA1 | Date |
---|---|---|
Enrique Morales | 623f19b7df | |
Lorenzo Carbonell | a1708f6ab3 | |
Lorenzo Carbonell | ebafdb3de0 | |
Lorenzo Carbonell | 7b8c013ad7 | |
Lorenzo Carbonell | 6ab9ef03fe | |
Lorenzo Carbonell | 1d80a61656 | |
Lorenzo Carbonell | 8dede28ef2 | |
Lorenzo Carbonell | 4db8e136d7 | |
Lorenzo Carbonell | 393b58a0ce | |
Lorenzo Carbonell | e71c3b3506 | |
Lorenzo Carbonell | 6f59f24d8a | |
Lorenzo Carbonell | c0c626aea6 | |
Enrique Morales | c5eb93e189 |
|
@ -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
|
|
@ -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
|
|
@ -0,0 +1,5 @@
|
|||
FQDN=cells.tusitio.es
|
||||
MYSQL_ROOT_PASSWORD=P@ssw0rd
|
||||
MYSQL_DATABASE=cells
|
||||
MYSQL_USER=pydio
|
||||
MYSQL_PASSWORD=P@ssw0rd
|
|
@ -12,7 +12,7 @@ services:
|
|||
env_file:
|
||||
- .env
|
||||
db:
|
||||
image: postgres:latest
|
||||
image: postgres:15
|
||||
init: true
|
||||
restart: unless-stopped
|
||||
env_file:
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
# Servidor jellyfin
|
||||
|
||||
# Instalación desde Portainer
|
||||
|
||||
Puedes ha
|
|
@ -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: {}
|
|
@ -0,0 +1 @@
|
|||
FQDN=jellyfin.tuservidor.es
|
|
@ -0,0 +1,5 @@
|
|||
# Servidor jellyfin
|
||||
|
||||
# Instalación desde Portainer
|
||||
|
||||
Puedes ha
|
|
@ -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: {}
|
|
@ -0,0 +1 @@
|
|||
FQDN=jellyfin.tuservidor.es
|
|
@ -0,0 +1 @@
|
|||
docker-compose.traefik.yml
|
|
@ -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:
|
||||
|
|
|
@ -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: {}
|
||||
|
|
|
@ -1 +1 @@
|
|||
FQDN=https://portainer.tuservidor.es
|
||||
FQDN=portainer.tuservidor.es
|
||||
|
|
|
@ -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
|
||||
|
|
Loading…
Reference in New Issue