commit
						00ea24b5c5
					
				@ -0,0 +1,153 @@
 | 
				
			||||
#!/bin/bash
 | 
				
			||||
 | 
				
			||||
#Pensé pour CentOS Stream 8
 | 
				
			||||
 | 
				
			||||
 | 
				
			||||
############################
 | 
				
			||||
#VARS
 | 
				
			||||
ostver="v1.16.3"
 | 
				
			||||
ostdir="/var/www/osticket"
 | 
				
			||||
ostpluginsrc="/usr/src/osticket/plugins"
 | 
				
			||||
############################
 | 
				
			||||
 | 
				
			||||
cd ~
 | 
				
			||||
 | 
				
			||||
#install modules de base
 | 
				
			||||
#dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm
 | 
				
			||||
dnf -y module enable php:8.0
 | 
				
			||||
dnf -y in php php-mysqli php-gd php-gettext php-imap php-json php-mbstring php-xml php-apc mariadb-server mariadb nginx php-fpm git
 | 
				
			||||
 | 
				
			||||
 | 
				
			||||
cat <<EOF >> /etc/nginx/conf.d/osticket
 | 
				
			||||
   # Rewrite all requests from HTTP to HTTPS
 | 
				
			||||
    server {
 | 
				
			||||
        listen 80;
 | 
				
			||||
        server_name tickets.noc.1nfo.services;
 | 
				
			||||
        rewrite ^ https://tickets.mydomain.com permanent;
 | 
				
			||||
    }
 | 
				
			||||
 | 
				
			||||
    server {
 | 
				
			||||
        listen 443;
 | 
				
			||||
        server_name tickets.1nfo.services;
 | 
				
			||||
        ssl on;
 | 
				
			||||
        ssl_certificate /etc/nginx/certs/cert.pem;
 | 
				
			||||
        ssl_certificate_key /etc/nginx/certs/cert.key;
 | 
				
			||||
 | 
				
			||||
        keepalive_timeout 70;
 | 
				
			||||
 | 
				
			||||
        root /var/www/osticket;
 | 
				
			||||
 | 
				
			||||
        set \$path_info "";
 | 
				
			||||
 | 
				
			||||
        location ~ /include {
 | 
				
			||||
            deny all;
 | 
				
			||||
            return 403;
 | 
				
			||||
        }
 | 
				
			||||
 | 
				
			||||
        if (\$request_uri ~ "^/api(/[^\?]+)") {
 | 
				
			||||
            set \$path_info \$1;
 | 
				
			||||
        }
 | 
				
			||||
 | 
				
			||||
        location ~ ^/api/(?:tickets|tasks).*$ {
 | 
				
			||||
            try_files \$uri \$uri/ /api/http.php?\$query_string;
 | 
				
			||||
        }
 | 
				
			||||
 | 
				
			||||
        if (\$request_uri ~ "^/scp/.*\.php(/[^\?]+)") {
 | 
				
			||||
            set \$path_info \$1;
 | 
				
			||||
        }
 | 
				
			||||
 | 
				
			||||
        if (\$request_uri ~ "^/.*\.php(/[^\?]+)") {
 | 
				
			||||
            set \$path_info \$1;
 | 
				
			||||
        }
 | 
				
			||||
 | 
				
			||||
        location ~ ^/scp/ajax.php/.*$ {
 | 
				
			||||
            try_files \$uri \$uri/ /scp/ajax.php?\$query_string;
 | 
				
			||||
        }
 | 
				
			||||
 | 
				
			||||
        location ~ ^/ajax.php/.*$ {
 | 
				
			||||
            try_files \$uri \$uri/ /ajax.php?\$query_string;
 | 
				
			||||
        }
 | 
				
			||||
 | 
				
			||||
        location / {
 | 
				
			||||
            try_files \$uri \$uri/ index.php;
 | 
				
			||||
        }
 | 
				
			||||
 | 
				
			||||
        location ~ \.php$ {
 | 
				
			||||
            try_files      \$uri = 404;
 | 
				
			||||
            fastcgi_param  SCRIPT_FILENAME  \$document_root\$fastcgi_script_name;
 | 
				
			||||
            include        fastcgi_params;
 | 
				
			||||
            fastcgi_param  PATH_INFO        \$path_info;
 | 
				
			||||
            fastcgi_pass   127.0.0.1:8888;
 | 
				
			||||
        }
 | 
				
			||||
    }
 | 
				
			||||
}
 | 
				
			||||
 | 
				
			||||
EOF
 | 
				
			||||
 | 
				
			||||
 | 
				
			||||
systemctl enable --now mariadb
 | 
				
			||||
systemctl enable --now nginx
 | 
				
			||||
systemctl enable --now php-fpm
 | 
				
			||||
 | 
				
			||||
#copie de la source
 | 
				
			||||
git clone https://github.com/osTicket/osTicket.git
 | 
				
			||||
cd osTicket
 | 
				
			||||
git checkout $ostver
 | 
				
			||||
git pull
 | 
				
			||||
 | 
				
			||||
#setup / deploiement
 | 
				
			||||
mkdir -p $ostdir
 | 
				
			||||
chown -R nginx:nginx $ostdir
 | 
				
			||||
chmod -R a+rX $ostdir
 | 
				
			||||
chmod -R u+rw $ostdir
 | 
				
			||||
 | 
				
			||||
php manage.php deploy --setup $ostdir
 | 
				
			||||
cd ..
 | 
				
			||||
 | 
				
			||||
# Setup Official Plugins
 | 
				
			||||
git clone -b develop https://github.com/osTicket/osTicket-plugins $ostpluginsrc
 | 
				
			||||
cd $ostpluginsrc
 | 
				
			||||
php make.php hydrate
 | 
				
			||||
for plugin in $(find * -maxdepth 0 -type d ! -path doc ! -path lib); do cp -r ${plugin} $ostdir/include/plugins; done;
 | 
				
			||||
cp -R $ostpluginsrc/*.phar $ostdir/include/plugins/
 | 
				
			||||
cd ~
 | 
				
			||||
# Add Community Plugins
 | 
				
			||||
    ## Archiver
 | 
				
			||||
    git clone https://github.com/clonemeagain/osticket-plugin-archiver $ostdir/include/plugins/archiver && \
 | 
				
			||||
    ## Attachment Preview
 | 
				
			||||
    git clone https://github.com/clonemeagain/attachment_preview $ostdir/include/plugins/attachment-preview && \
 | 
				
			||||
    ## Auto Closer
 | 
				
			||||
    git clone https://github.com/clonemeagain/plugin-autocloser $ostdir/include/plugins/auto-closer && \
 | 
				
			||||
    ## Fetch Note
 | 
				
			||||
    git clone https://github.com/bkonetzny/osticket-fetch-note $ostdir/include/plugins/fetch-note && \
 | 
				
			||||
    ## Field Radio Buttons
 | 
				
			||||
    git clone https://github.com/Micke1101/OSTicket-plugin-field-radiobuttons $ostdir/include/plugins/field-radiobuttons && \
 | 
				
			||||
    ## Mentioner
 | 
				
			||||
    git clone https://github.com/clonemeagain/osticket-plugin-mentioner $ostdir/include/plugins/mentioner && \
 | 
				
			||||
    ## Multi LDAP Auth
 | 
				
			||||
    git clone https://github.com/philbertphotos/osticket-multildap-auth $ostdir/include/plugins/multi-ldap && \
 | 
				
			||||
    mv $ostdir/include/plugins/multi-ldap/multi-ldap/* $ostdir/include/plugins/multi-ldap/ && \
 | 
				
			||||
    rm -rf $ostdir/include/plugins/multi-ldap/multi-ldap && \
 | 
				
			||||
    ## Prevent Autoscroll
 | 
				
			||||
    git clone https://github.com/clonemeagain/osticket-plugin-preventautoscroll $ostdir/include/plugins/prevent-autoscroll && \
 | 
				
			||||
    ## Rewriter
 | 
				
			||||
    git clone https://github.com/clonemeagain/plugin-fwd-rewriter $ostdir/include/plugins/rewriter && \
 | 
				
			||||
    ## Slack
 | 
				
			||||
    git clone https://github.com/clonemeagain/osticket-slack $ostdir/include/plugins/slack && \
 | 
				
			||||
    ## Teams (Microsoft)
 | 
				
			||||
    git clone https://github.com/ipavlovi/osTicket-Microsoft-Teams-plugin $ostdir/include/plugins/teams && \
 | 
				
			||||
    \
 | 
				
			||||
### Log Miscellany Installation
 | 
				
			||||
    touch /var/log/msmtp.log && \
 | 
				
			||||
    chown nginx:nginx /var/log/msmtp.log && \
 | 
				
			||||
 | 
				
			||||
 | 
				
			||||
 | 
				
			||||
 | 
				
			||||
##update
 | 
				
			||||
#git pull
 | 
				
			||||
#php manage.php deploy -v $ostdir
 | 
				
			||||
 | 
				
			||||
 | 
				
			||||
##upgrade nouvelle version
 | 
				
			||||
#futur!
 | 
				
			||||
					Loading…
					
					
				
		Reference in new issue