#!/bin/bash apt-get update apt-get install -y wget curl git vim if ! which docker ; then curl -s -o getdocker.sh https://get.docker.com bash getdocker.sh gpasswd -a vagrant docker fi mkdir -p nextcloud && cd nextcloud wget -O mkcert https://github.com/FiloSottile/mkcert/releases/download/v1.4.4/mkcert-v1.4.4-linux-amd64 chmod +x mkcert mv mkcert /usr/local/bin sudo apt-get install -y libnss3-tools mkdir certs config mkcert -install mkcert -cert-file certs/local-cert.pem -key-file certs/local-key.pem "mon.nxc" "*.mon.nxc" cat > traefik.yml < ./config/static.yml < ./config/dynamic.yml < nextcloud.yml <<'EOT' version: '2' volumes: nextcloud: db: networks: proxy: external: true nxc: external: false services: db: image: mariadb:10.5 container_name: db restart: always command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW volumes: - db:/var/lib/mysql networks: - nxc environment: - MYSQL_ROOT_PASSWORD=Azerty1+ - MYSQL_PASSWORD=Azerty1+ - MYSQL_DATABASE=nextcloud - MYSQL_USER=nextcloud app: image: nextcloud container_name: app restart: always # ports: # - 8081:80 #links: depends_on: - db volumes: - nextcloud:/var/www/html networks: - proxy - nxc labels: - "traefik.enable=true" - "traefik.http.routers.app.rule=Host(`mon.nxc`)" - "traefik.http.routers.app.tls=true" environment: - MYSQL_PASSWORD=Azerty1+ - MYSQL_DATABASE=nextcloud - MYSQL_USER=nextcloud - MYSQL_HOST=db 'EOT' docker network create proxy docker compose -f traefik.yml up -d docker compose -f nextcloud.yml up -d ip -br a