Skip to content
Snippets Groups Projects
Select Git revision
  • 6d346a51f70c85da6be83b41e391639893606ff2
  • 2024ws default protected
  • 2023ws
3 results

pgscript.sty

Blame
  • Forked from Peter Gerwinski / Datenbanken und Datensicherheit
    Source project has a limited visibility.
    configure_once.sh 2.54 KiB
    #!/bin/bash
    
    
    ## YOUR SETTINGS
    ## Configure domains and letsencrypt
    #
    domain=armin-co.de
    sub_domains=mumble,mumble-web,jitsi
    mail=test@armin-co.de
    
    
    
    # git
    git_url="https://gitlab.cvh-server.de/aco/"
    
    ## Mumble
    #
    mumble_dir=build-mumble-web
    mumble_url="$git_url$mumble_dir".git
    
    ## Jitsi
    #
    jitsi_dir=jitsi-auto-config
    jitsi_url="$git_url$jitsi_dir".git
    
    
    ## letsencrypt
    #
    le_dir=letsencrypt-webserver
    le_url="$git_url$le_dir".git
    
    ## noVNC
    #
    novnc_dir=novnc
    novnc_url="$git_url$novnc_dir".git
    
    
    # Do not request new certificates while developing
    dbg_delete_letsencrypt=false
    
    
    # Remove all existing repositories
    # and configurations.
    function remove_all() {
        echo "Removing all previous configs..."
        git clean -fd
        git pull
        rm -rf $mumble_dir $jitsi_dir $novnc_dir
    
        if [$dbg_delete_letsencrypt = "true"]; then
            rm -rf $le_dir
        fi
    
        echo "Removed all repositories."
    }
    
    
    # Clone repositories
    function clone_repositories() {
        git clone $mumble_url
        git clone $jitsi_url
        git clone $le_url
        git clone $novnc_url
    }
    
    
    
    function configure_letsencrypt() {
        echo ""
        echo "Setting your letsencrypt domain settings."
        echo ""
        le_compose=$le_dir/docker-compose.yml
        # Adds your domain to docker-compose
        sed -i "s/your-domain.com/$domain/" $le_compose
        # Adds the list of subdomains to use to docker-compose
        sed -i "s/your_subdomains/$sub_domains/" $le_compose
        # Add E-Mail address that will be used to notify you
        # about for example expiring certificates.
        sed -i "s/your_email/$mail/" $le_compose
        
        # For using not only your subdomains uncomment the following line.
        # sed -i "s/- ONLY_SUBDOMAINS=true/- ONLY_SUBDOMAINS=false/" $le_dir
    
        # start once to generate directories and certificates
        docker-compose -f $le_compose up -d && docker logs reverse-proxy && docker-compose -f $le_compose down
        echo ""
        echo "Done configuring LetsEncrypt and generating certificates."
    }
    
    
    ## Configure Murmur (mumble server) and mumble-web
    #
    function configure_mumble() {
        cd build-mumble-web
        git clone https://github.com/Johni0702/mumble-web.git
        cd ..
        mkdir murmur
        cp $mumble_dir/murmur/mumble-server.ini murmur/mumble-server.ini
        touch murmur/mumble-server.log
    }
    
    
    ## Run configuration
    #
    echo ""
    echo "Starting configuration with cleaning up and pulling again."
    echo ""
    
    ./tools/stop_containers.sh
    remove_all
    clone_repositories
    
    # configure letsencrypt
    configure_letsencrypt
    
    # configure mumble
    configure_mumble
    
    
    ./tools/stop_containers.sh
    
    ## pull and update all images
    #
    ./tools/update_containers.sh