Add peertube
This commit is contained in:
parent
5db4972364
commit
b9af7bd11c
@ -41,6 +41,14 @@ matrix.{$DWEB_DOMAIN}:8448 {
|
|||||||
reverse_proxy http://synapse:8008
|
reverse_proxy http://synapse:8008
|
||||||
}
|
}
|
||||||
|
|
||||||
|
peertube.{$DWEB_DOMAIN}:1935, https://peertube.{$DWEB_DOMAIN}:1935 {
|
||||||
|
reverse_proxy http://peertube-back:1935
|
||||||
|
}
|
||||||
|
|
||||||
|
peertube.{$DWEB_DOMAIN}, https://peertube.{$DWEB_DOMAIN} {
|
||||||
|
reverse_proxy http://peertube-back:9010
|
||||||
|
}
|
||||||
|
|
||||||
social.{$DWEB_DOMAIN}, http://social.{$DWEB_ONION} {
|
social.{$DWEB_DOMAIN}, http://social.{$DWEB_ONION} {
|
||||||
|
|
||||||
root * /srv/mastodon/public
|
root * /srv/mastodon/public
|
||||||
|
|||||||
48
conf/compose/peertube.docker-compose.yml
Normal file
48
conf/compose/peertube.docker-compose.yml
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
volumes:
|
||||||
|
peertube_data:
|
||||||
|
peertube_config:
|
||||||
|
peertube_db:
|
||||||
|
peertube_redis:
|
||||||
|
|
||||||
|
networks:
|
||||||
|
peertube-int:
|
||||||
|
|
||||||
|
services:
|
||||||
|
peertube-back:
|
||||||
|
image: chocobozzz/peertube:production-bookworm
|
||||||
|
env_file: ../peertube/environment
|
||||||
|
ports:
|
||||||
|
- "127.0.0.1:1935:1935"
|
||||||
|
- "127.0.0.1:9010:9000"
|
||||||
|
volumes:
|
||||||
|
# Remove the following line if you want to use another webserver/proxy or test PeerTube in local
|
||||||
|
# - assets:/app/client/dist
|
||||||
|
- peertube_data:/data
|
||||||
|
- peertube_config:/config
|
||||||
|
depends_on:
|
||||||
|
- peertube-postgres
|
||||||
|
- peertube-redis
|
||||||
|
networks:
|
||||||
|
- peertube-int
|
||||||
|
- back
|
||||||
|
restart: "always"
|
||||||
|
|
||||||
|
peertube-postgres:
|
||||||
|
image: postgres:13-alpine
|
||||||
|
env_file: ../peertube/environment
|
||||||
|
environment:
|
||||||
|
- 'POSTGRES_HOST_AUTH_METHOD=trust'
|
||||||
|
volumes:
|
||||||
|
- peertube_db:/var/lib/postgresql/data
|
||||||
|
networks:
|
||||||
|
- peertube-int
|
||||||
|
restart: "always"
|
||||||
|
|
||||||
|
peertube-redis:
|
||||||
|
image: redis:6-alpine
|
||||||
|
volumes:
|
||||||
|
- peertube_redis:/data
|
||||||
|
networks:
|
||||||
|
- peertube-int
|
||||||
|
restart: "always"
|
||||||
|
|
||||||
49
conf/peertube/environment
Normal file
49
conf/peertube/environment
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
# Database / Postgres service configuration
|
||||||
|
POSTGRES_USER=postgres
|
||||||
|
POSTGRES_PASSWORD=
|
||||||
|
# Postgres database name "peertube"
|
||||||
|
POSTGRES_DB=peertube
|
||||||
|
# Database username and password used by PeerTube must match Postgres', so they are copied:
|
||||||
|
PEERTUBE_DB_USERNAME=postgres
|
||||||
|
PEERTUBE_DB_PASSWORD=$POSTGRES_PASSWORD
|
||||||
|
PEERTUBE_DB_SSL=false
|
||||||
|
# Default to Postgres service name "postgres" in docker-compose.yml
|
||||||
|
PEERTUBE_DB_HOSTNAME=peertube-postgres
|
||||||
|
|
||||||
|
PEERTUBE_REDIS_HOSTNAME=peertube-redis
|
||||||
|
|
||||||
|
# PeerTube server configuration
|
||||||
|
# If you test PeerTube in local: use "peertube.localhost" and add this domain to your host file resolving on 127.0.0.1
|
||||||
|
PEERTUBE_WEBSERVER_HOSTNAME=REPLACEME
|
||||||
|
# If you just want to test PeerTube on local
|
||||||
|
PEERTUBE_WEBSERVER_PORT=443
|
||||||
|
PEERTUBE_WEBSERVER_HTTPS=true
|
||||||
|
# If you need more than one IP as trust_proxy
|
||||||
|
# pass them as a comma separated array:
|
||||||
|
PEERTUBE_TRUST_PROXY=["127.0.0.1", "loopback", "172.18.0.1/32"]
|
||||||
|
|
||||||
|
# Generate one using `openssl rand -hex 32`
|
||||||
|
PEERTUBE_SECRET=
|
||||||
|
|
||||||
|
# E-mail configuration
|
||||||
|
# If you use a Custom SMTP server
|
||||||
|
PEERTUBE_SMTP_USERNAME=changeme
|
||||||
|
PEERTUBE_SMTP_PASSWORD=changeme
|
||||||
|
# Default to Postfix service name "postfix" in docker-compose.yml
|
||||||
|
# May be the hostname of your Custom SMTP server
|
||||||
|
PEERTUBE_SMTP_HOSTNAME=
|
||||||
|
PEERTUBE_SMTP_PORT=475
|
||||||
|
PEERTUBE_SMTP_FROM=
|
||||||
|
PEERTUBE_SMTP_TLS=true
|
||||||
|
PEERTUBE_SMTP_DISABLE_STARTTLS=true
|
||||||
|
PEERTUBE_ADMIN_EMAIL=changeme@example.com
|
||||||
|
|
||||||
|
PEERTUBE_OBJECT_STORAGE_UPLOAD_ACL_PUBLIC="public-read"
|
||||||
|
PEERTUBE_OBJECT_STORAGE_UPLOAD_ACL_PRIVATE="private"
|
||||||
|
|
||||||
|
#PEERTUBE_LOG_LEVEL=info
|
||||||
|
|
||||||
|
# /!\ Prefer to use the PeerTube admin interface to set the following configurations /!\
|
||||||
|
#PEERTUBE_SIGNUP_ENABLED=true
|
||||||
|
#PEERTUBE_TRANSCODING_ENABLED=true
|
||||||
|
#PEERTUBE_CONTACT_FORM_ENABLED=true
|
||||||
21
install.sh
21
install.sh
@ -139,6 +139,16 @@ mastodon_config () {
|
|||||||
docker volume rm -f masto_data_tmp
|
docker volume rm -f masto_data_tmp
|
||||||
}
|
}
|
||||||
|
|
||||||
|
peertube_config () {
|
||||||
|
printf "${YELLOW}## Generating Peertube config${NC}\n"
|
||||||
|
|
||||||
|
PEERTUBE_SECRET=$(openssl rand -hex 32)
|
||||||
|
|
||||||
|
sed -i "s/REPLACEME/$DWEB_DOMAIN/" $DCOMMS_DIR/conf/peertube/environment
|
||||||
|
sed -i "s/PEERTUBE_SECRET=/PEERTUBE_SECRET=$PEERTUBE_SECRET/" $DCOMMS_DIR/conf/peertube/environment
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
mau_config () {
|
mau_config () {
|
||||||
printf "${YELLOW}## Generating mau bot config${NC}\n"
|
printf "${YELLOW}## Generating mau bot config${NC}\n"
|
||||||
docker run --rm --mount type=bind,src=$(readlink -f $DCOMMS_DIR/conf/mau),dst=/data dock.mau.dev/maubot/maubot:v0.3.1 1>&2 >/dev/null
|
docker run --rm --mount type=bind,src=$(readlink -f $DCOMMS_DIR/conf/mau),dst=/data dock.mau.dev/maubot/maubot:v0.3.1 1>&2 >/dev/null
|
||||||
@ -193,7 +203,8 @@ main() {
|
|||||||
"2" "Element & Synapse" ON \
|
"2" "Element & Synapse" ON \
|
||||||
"3" "Ceno Bridge" ON \
|
"3" "Ceno Bridge" ON \
|
||||||
"4" "Maubot" OFF \
|
"4" "Maubot" OFF \
|
||||||
"5" "Mastodon" OFF 3>&1 1>&2 2>&3)
|
"5" "Mastodon" OFF \
|
||||||
|
"6" "Peertube" OFF 3>&1 1>&2 2>&3)
|
||||||
|
|
||||||
if [ -z "$CHOICES" ]; then
|
if [ -z "$CHOICES" ]; then
|
||||||
echo "No option was selected (user hit Cancel or unselected all options)"
|
echo "No option was selected (user hit Cancel or unselected all options)"
|
||||||
@ -226,6 +237,10 @@ main() {
|
|||||||
COMPOSE_FILES+="-f ./conf/compose/mastodon.docker-compose.yml "
|
COMPOSE_FILES+="-f ./conf/compose/mastodon.docker-compose.yml "
|
||||||
MASTO=true
|
MASTO=true
|
||||||
;;
|
;;
|
||||||
|
"6")
|
||||||
|
COMPOSE_FILES+="-f ./conf/compose/peertube.docker-compose.yml "
|
||||||
|
PEERTUBE=true
|
||||||
|
;;
|
||||||
*)
|
*)
|
||||||
echo "Unsupported item $CHOICE!" >&2
|
echo "Unsupported item $CHOICE!" >&2
|
||||||
exit 1
|
exit 1
|
||||||
@ -250,7 +265,6 @@ main() {
|
|||||||
|
|
||||||
detect_connectivity
|
detect_connectivity
|
||||||
|
|
||||||
mkdir -p $DCOMMS_DIR/images
|
|
||||||
if [[ "${HUB_REACHABLE}" == true ]]; then
|
if [[ "${HUB_REACHABLE}" == true ]]; then
|
||||||
di=1
|
di=1
|
||||||
printf "${GREEN}### Grabbing images from Docker Hub.${NC}\n"
|
printf "${GREEN}### Grabbing images from Docker Hub.${NC}\n"
|
||||||
@ -286,6 +300,9 @@ main() {
|
|||||||
if [[ "${MASTO}" == true ]]; then
|
if [[ "${MASTO}" == true ]]; then
|
||||||
mastodon_config
|
mastodon_config
|
||||||
fi
|
fi
|
||||||
|
if [[ "${PEERTUBE}" == true ]]; then
|
||||||
|
peertube_config
|
||||||
|
fi
|
||||||
echo "sudo DWEB_ONION=$DWEB_ONION DWEB_DOMAIN=$DWEB_DOMAIN DWEB_FRIENDLY_DOMAIN=$DWEB_FRIENDLY_DOMAIN docker compose $COMPOSE_FILES up -d" >> $DCOMMS_DIR/run.sh
|
echo "sudo DWEB_ONION=$DWEB_ONION DWEB_DOMAIN=$DWEB_DOMAIN DWEB_FRIENDLY_DOMAIN=$DWEB_FRIENDLY_DOMAIN docker compose $COMPOSE_FILES up -d" >> $DCOMMS_DIR/run.sh
|
||||||
chmod +x $DCOMMS_DIR/run.sh
|
chmod +x $DCOMMS_DIR/run.sh
|
||||||
printf "${GREEN} dComms succesfully installed! Start your services by running 'run.sh' in $DCOMMS_DIR.${NC}\n"
|
printf "${GREEN} dComms succesfully installed! Start your services by running 'run.sh' in $DCOMMS_DIR.${NC}\n"
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user