mirror of
https://github.com/Karaka-Management/Build.git
synced 2026-01-11 03:38:40 +00:00
135 lines
4.5 KiB
Bash
135 lines
4.5 KiB
Bash
#!/bin/bash
|
|
|
|
###############################################################
|
|
## General
|
|
###############################################################
|
|
|
|
# For every user .bash_profile
|
|
export PROMPT_COMMAND='if [ "$(id -u)" -ne 0 ]; then echo "$(date "+%Y-%m-%d.%H:%M:%S") $(pwd) $(history 1)" >> /var/www/html/backup/bash/$(date "+%Y-%m-%d").log; fi'
|
|
|
|
# Debian
|
|
#wget -q https://packages.sury.org/php/apt.gpg -O- | sudo apt-key add -
|
|
#echo "deb https://packages.sury.org/php/ stretch main" | sudo tee /etc/apt/sources.list.d/php.list
|
|
|
|
apt -y install software-properties-common
|
|
add-apt-repository ppa:ondrej/php
|
|
|
|
apt-get update
|
|
|
|
apt-get install php8.1 php8.1-dev php8.1-cli php8.1-common php8.1-mysql php8.1-pgsql php8.1-xdebug php8.1-opcache php8.1-pdo php8.1-sqlite php8.1-mbstring php8.1-curl php8.1-imap php8.1-bcmath php8.1-zip php8.1-dom php8.1-xml php8.1-phar php8.1-gd php-pear apache2 mysql-server wkhtmltopdf tesseract-ocr poppler-utils
|
|
|
|
a2enmod rewrite
|
|
a2enmod headers
|
|
|
|
# USE mysql;
|
|
# mysql < 5.7
|
|
# UPDATE user SET plugin='mysql_native_password' WHERE User='root';
|
|
# UPDATE user SET password=PASSWORD("") WHERE User='root';
|
|
# FLUSH PRIVILEGES;
|
|
# exit;
|
|
# else mysql >= 5.7
|
|
# ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '';
|
|
# else mysql even newer
|
|
# UPDATE mysql.user SET Password=PASSWORD('root') WHERE User='root';
|
|
# flush privileges;
|
|
# update mysql.user set plugin='' where user='root';
|
|
# flush privileges;
|
|
|
|
###############################################################
|
|
## Jingga Server
|
|
###############################################################
|
|
|
|
apt-get install borgbackup
|
|
|
|
### Install borg
|
|
borg init -v --encryption=repokey /var/www/html
|
|
borg key export /var/www/html repokey
|
|
|
|
###############################################################
|
|
## Developer
|
|
###############################################################
|
|
|
|
apt-get install npm git composer cmake postgresql postgresql-contrib pcov
|
|
composer install
|
|
composer update
|
|
npm install -D jasmine jasmine-node istanbul jasmine-console-reporter supertest jasmine-supertest selenium-webdriver chromedriver geckodriver eslint
|
|
|
|
### Setup postgresql
|
|
|
|
# /etc/postgresq/hba_..
|
|
# change from md5 to trust
|
|
# login to psql and \password define new password
|
|
|
|
update-rc.d postgresql enable
|
|
service postgresql start
|
|
|
|
# Install sqlsrv
|
|
# https://docs.microsoft.com/en-us/sql/connect/php/installation-tutorial-linux-mac?view=sql-server-2017
|
|
# https://www.sqlservercentral.com/blogs/reset-sa-password-on-sql-server-on-linux
|
|
# systemctl restart mssql-server
|
|
|
|
#Mssql
|
|
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
|
|
add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/18.04/mssql-server-2019.list)"
|
|
apt-get update
|
|
apt-get install -y mssql-server
|
|
/opt/mssql/bin/mssql-conf setup
|
|
systemctl status mssql-server --no-pager
|
|
curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
|
|
apt-get install libodbc1 unixodbc unixodbc-dev msodbcsql
|
|
https://packages.microsoft.com/config/ubuntu/18.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list
|
|
sudo apt-get update
|
|
sudo apt-get install mssql-tools unixodbc-dev
|
|
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
|
|
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
|
|
source ~/.bashrc
|
|
sudo pecl install sqlsrv
|
|
sudo pecl install pdo_sqlsrv
|
|
printf "; priority=20\nextension=sqlsrv.so\n" > /etc/php/8.1/mods-available/sqlsrv.ini
|
|
printf "; priority=30\nextension=pdo_sqlsrv.so\n" > /etc/php/8.1/mods-available/pdo_sqlsrv.ini
|
|
phpenmod -v 8.1 sqlsrv pdo_sqlsrv
|
|
service apache2 restart
|
|
|
|
pecl install ast
|
|
|
|
echo "extension=ast.so" | tee /etc/php/8.1/mods-available/ast.ini
|
|
phpenmod ast
|
|
|
|
# Install redis
|
|
sudo apt install redis-server
|
|
# /etc/redis/...config
|
|
# supervised systemd
|
|
# dir /var/lib/redis
|
|
systemctl restart redis
|
|
|
|
pecl install redis
|
|
echo "extension=redis.so" | tee /etc/php/8.1/mods-available/redis.ini
|
|
phpenmod redis
|
|
|
|
# Install memcached
|
|
apt-get install memcached libmemcached-dev libmemcached-tools php8.1-memcached
|
|
systemctl restart memcached
|
|
pecl install memcached
|
|
echo "extension=memcached.so" | tee /etc/php/8.1/mods-available/memcached.ini
|
|
phpenmod memcached
|
|
|
|
# create new user
|
|
#adduser test
|
|
#usermod -aG sudo test
|
|
|
|
# Install email server for testing
|
|
apt-get install dovecot-imapd dovecot-pop3d
|
|
# protocls = pop3 pop3s imap imaps
|
|
# pop3_uidl_format = %08Xu%08Xv
|
|
/etc/init.d/dovecot start
|
|
sudo useradd -d /home/test -g mail -u 1001 -s /bin/bash test
|
|
# Make sure no ssh is possible for this user
|
|
|
|
# FTP
|
|
apt-get install vsftpd
|
|
|
|
# /etc/vstftpd.conf
|
|
# write_enable=YES
|
|
# anon_upload_enable=YES
|
|
# connect_from_port_20=NO
|