Initialer Import der Synology Scripts
This commit is contained in:
+666
@@ -0,0 +1,666 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
# Detect the OS
|
||||
if [ -f /etc/redhat-release ]; then
|
||||
OS="RHEL"
|
||||
elif [ -f /etc/lsb-release ]; then
|
||||
OS="Ubuntu"
|
||||
else
|
||||
echo "Unsupported OS"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
#MAIN
|
||||
download_files() {
|
||||
# Array von URLs
|
||||
URLS=(
|
||||
"https://nexus.alfresco.com/nexus/repository/releases/org/alfresco/alfresco-content-services-community-distribution/23.2.1/alfresco-content-services-community-distribution-23.2.1.zip"
|
||||
"https://nexus.alfresco.com/nexus/repository/releases/org/alfresco/alfresco-search-services/2.0.9.1/alfresco-search-services-2.0.9.1.zip"
|
||||
"https://nexus.alfresco.com/nexus/repository/releases/org/alfresco/alfresco-transform-core-aio/5.1.0/alfresco-transform-core-aio-5.1.0.jar"
|
||||
)
|
||||
|
||||
# Verzeichnis, in das die Dateien heruntergeladen werden sollen
|
||||
DEST_DIR="/tmp/downloads"
|
||||
|
||||
# Erstelle das Verzeichnis, falls es nicht existiert
|
||||
mkdir -p "$DEST_DIR"
|
||||
|
||||
# Herunterladen der Dateien
|
||||
for URL in "${URLS[@]}"; do
|
||||
echo "Downloading $URL..."
|
||||
# Extrahiere den Dateinamen aus der URL
|
||||
FILE_NAME=$(basename "$URL")
|
||||
# Lade die Datei herunter und speichere sie im Zielverzeichnis
|
||||
curl -L "$URL" -o "$DEST_DIR/$FILE_NAME"
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "Successfully downloaded $FILE_NAME"
|
||||
else
|
||||
echo "Failed to download $FILE_NAME"
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
|
||||
# Functions for RHEL
|
||||
install_postgresql_rhel() {
|
||||
echo "Updating package list..."
|
||||
sudo yum update -y
|
||||
|
||||
echo "Installing PostgreSQL 16..."
|
||||
#sudo yum install -y https://download.postgresql.org/pub/repos/yum/16/redhat/rhel-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
|
||||
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
|
||||
sudo dnf -qy module disable postgresql
|
||||
sudo yum install -y postgresql16-server postgresql16-contrib
|
||||
|
||||
echo "Initializing PostgreSQL database..."
|
||||
sudo /usr/pgsql-16/bin/postgresql-16-setup initdb
|
||||
|
||||
echo "Enable local connections"
|
||||
sudo sed -i 's/peer/trust/' /var/lib/pgsql/16/data/pg_hba.conf
|
||||
sudo sed -i 's/ident/md5/' /var/lib/pgsql/16/data/pg_hba.conf
|
||||
|
||||
echo "Starting PostgreSQL service..."
|
||||
sudo systemctl start postgresql-16
|
||||
|
||||
echo "Configuring Alfresco database..."
|
||||
sudo -u postgres psql -c "CREATE USER alfresco WITH PASSWORD 'alfresco';"
|
||||
sudo -u postgres psql -c "CREATE DATABASE alfresco OWNER alfresco ENCODING 'UTF8';"
|
||||
sudo -u postgres psql -c "GRANT ALL PRIVILEGES ON DATABASE alfresco TO alfresco;"
|
||||
|
||||
echo "Stopping PostgreSQL service..."
|
||||
sudo systemctl stop postgresql-16
|
||||
|
||||
echo "Enabling PostgreSQL to start on boot..."
|
||||
sudo systemctl enable postgresql-16
|
||||
|
||||
echo "PostgreSQL installation and setup completed successfully!"
|
||||
}
|
||||
install_java_rhel() {
|
||||
echo "Updating package list..."
|
||||
sudo dnf update -y
|
||||
|
||||
echo "Installing the latest Java JDK and development tools..."
|
||||
# Install Java JDK and development tools (java-17-openjdk and java-17-openjdk-devel)
|
||||
sudo dnf install -y java-17-openjdk java-17-openjdk-devel
|
||||
|
||||
echo "Setting Java as the default version..."
|
||||
# Update alternatives to ensure the correct Java version is used
|
||||
sudo alternatives --install /usr/bin/java java /usr/lib/jvm/java-17-openjdk-*/bin/java 1
|
||||
sudo alternatives --install /usr/bin/javac javac /usr/lib/jvm/java-17-openjdk-*/bin/javac 1
|
||||
|
||||
echo "Checking the installed Java version..."
|
||||
java -version
|
||||
|
||||
# Automatically select the correct version
|
||||
echo "Selecting the Java alternative..."
|
||||
# Hier die Nummer der gewünschten Java-Version setzen. Ersetze "1" durch die entsprechende Nummer.
|
||||
echo "1" | sudo alternatives --config java
|
||||
|
||||
echo "Selecting the javac alternative..."
|
||||
# Hier die Nummer der gewünschten javac-Version setzen. Ersetze "1" durch die entsprechende Nummer.
|
||||
echo "1" | sudo alternatives --config javac
|
||||
|
||||
echo "Verifying Java installation..."
|
||||
java -version
|
||||
javac -version
|
||||
|
||||
echo "Java JDK installation and setup completed successfully!"
|
||||
}
|
||||
install_tomcat_rhel() {
|
||||
# Tomcat installation for RHEL
|
||||
echo "Updating package list..."
|
||||
sudo yum update -y
|
||||
|
||||
echo "Installing Tomcat 10..."
|
||||
sudo yum install -y tomcat tomcat-webapps tomcat-admin-webapps
|
||||
|
||||
echo "Starting Tomcat service..."
|
||||
sudo systemctl start tomcat
|
||||
|
||||
echo "Enabling Tomcat to start on boot..."
|
||||
sudo systemctl enable tomcat
|
||||
|
||||
echo "Tomcat installation and setup completed successfully!"
|
||||
}
|
||||
install_activemq_rhel() {
|
||||
echo "Updating package list..."
|
||||
sudo yum update -y
|
||||
|
||||
echo "Downloading ActiveMQ..."
|
||||
wget https://dlcdn.apache.org/activemq/6.1.3/apache-activemq-6.1.3-bin.tar.gz -O /tmp/apache-activemq-6.1.3-bin.tar.gz
|
||||
|
||||
echo "Extracting ActiveMQ..."
|
||||
sudo mkdir /opt/activemq
|
||||
sudo tar xzvf /tmp/apache-activemq-6.1.3-bin.tar.gz -C /opt/activemq --strip-components=1
|
||||
|
||||
echo "Setting permissions for ActiveMQ directories..."
|
||||
sudo useradd activemq
|
||||
sudo chown -R activemq:activemq /opt/activemq
|
||||
sudo chmod -R 755 /opt/activemq
|
||||
|
||||
echo "Creating ActiveMQ systemd service file..."
|
||||
cat <<EOL | sudo tee /etc/systemd/system/activemq.service
|
||||
[Unit]
|
||||
Description=Apache ActiveMQ
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=forking
|
||||
|
||||
User=activemq
|
||||
Group=activemq
|
||||
|
||||
Environment="JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64"
|
||||
Environment="ACTIVEMQ_HOME=/opt/activemq"
|
||||
Environment="ACTIVEMQ_BASE=/opt/activemq"
|
||||
Environment="ACTIVEMQ_CONF=/opt/activemq/conf"
|
||||
Environment="ACTIVEMQ_DATA=/opt/activemq/data"
|
||||
|
||||
ExecStart=/opt/activemq/bin/activemq start
|
||||
ExecStop=/opt/activemq/bin/activemq stop
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
EOL
|
||||
|
||||
echo "Reloading systemd daemon..."
|
||||
sudo systemctl daemon-reload
|
||||
|
||||
echo "Starting ActiveMQ service..."
|
||||
sudo systemctl start activemq
|
||||
|
||||
echo "Enabling ActiveMQ service to start on boot..."
|
||||
sudo systemctl enable activemq
|
||||
|
||||
echo "Apache ActiveMQ installation and setup completed successfully!"
|
||||
}
|
||||
install_alfresco_rhel(){
|
||||
|
||||
echo "Create support folders and configuration in Tomcat"
|
||||
mkdir -p /etc/tomcat/shared/classes && mkdir -p /etc/tomcat/shared/lib
|
||||
sed -i 's|^shared.loader=$|shared.loader=${catalina.base}/shared/classes,${catalina.base}/shared/lib/*.jar|' /etc/tomcat/catalina.properties
|
||||
|
||||
echo "Unzip Alfresco ZIP Distribution File"
|
||||
mkdir /tmp/downloads/alfresco
|
||||
|
||||
echo "Copy JDBC driver"
|
||||
cp /tmp/downloads/alfresco/web-server/lib/postgresql-42.6.0.jar /etc/tomcat/shared/lib/
|
||||
|
||||
echo "Configure JAR Addons deployment"
|
||||
mkdir -p /etc/modules/platform && mkdir -p /opt/modules/share && mkdir -p /opt/tomcat/conf/Catalina/localhost
|
||||
cp /tmp/downloads/alfresco/web-server/conf/Catalina/localhost/* /opt/tomcat/conf/Catalina/localhost/
|
||||
|
||||
echo "Install Web Applications"
|
||||
cp /tmp/downloads/alfresco/web-server/webapps/* /etc/tomcat/webapps/
|
||||
|
||||
echo "Apply configuration"
|
||||
cp -r /tmp/downloads/alfresco/web-server/shared/classes/* /etc/tomcat/shared/classes/
|
||||
mkdir /opt/keystore && cp -r /tmp/downloads/alfresco/keystore/* /opt/keystore/
|
||||
mkdir /opt/alf_data
|
||||
cat <<EOL | tee /etc/tomcat/shared/classes/alfresco-global.properties
|
||||
#
|
||||
# Custom content and index data location
|
||||
#
|
||||
dir.root=/opt/alf_data
|
||||
dir.keystore=/opt/keystore/
|
||||
|
||||
#
|
||||
# Database connection properties
|
||||
#
|
||||
db.username=alfresco
|
||||
db.password=alfresco
|
||||
db.driver=org.postgresql.Driver
|
||||
db.url=jdbc:postgresql://localhost:5432/alfresco
|
||||
|
||||
#
|
||||
# Solr Configuration
|
||||
#
|
||||
solr.secureComms=secret
|
||||
solr.sharedSecret=secret
|
||||
solr.host=localhost
|
||||
solr.port=8983
|
||||
index.subsystem.name=solr6
|
||||
|
||||
#
|
||||
# Transform Configuration
|
||||
#
|
||||
localTransform.core-aio.url=http://localhost:8090/
|
||||
|
||||
#
|
||||
# Events Configuration
|
||||
#
|
||||
messaging.broker.url=failover:(nio://localhost:61616)?timeout=3000&jms.useCompression=true
|
||||
|
||||
#
|
||||
# URL Generation Parameters
|
||||
#-------------
|
||||
alfresco.context=alfresco
|
||||
alfresco.host=localhost
|
||||
alfresco.port=8080
|
||||
alfresco.protocol=http
|
||||
share.context=share
|
||||
share.host=localhost
|
||||
share.port=8080
|
||||
share.protocol=http
|
||||
EOL
|
||||
|
||||
echo "Apply AMPs"
|
||||
mkdir /opt/amps && cp -r /tmp/downloads/alfresco/amps/* /opt/amps/
|
||||
mkdir /opt/bin && cp -r /tmp/downloads/alfresco/bin/* /opt/bin/
|
||||
java -jar /opt/bin/alfresco-mmt.jar install /opt/amps /etc/tomcat/webapps/alfresco.war -directory
|
||||
java -jar /opt/bin/alfresco-mmt.jar list /etc/tomcat/webapps/alfresco.war
|
||||
|
||||
echo "Modify alfresco and share logs directory"
|
||||
mkdir /etc/tomcat/webapps/alfresco && unzip /etc/tomcat/webapps/alfresco.war -d /etc/tomcat/webapps/alfresco
|
||||
mkdir /etc/tomcat/webapps/share && unzip /etc/tomcat/webapps/share.war -d /etc/tomcat/webapps/share
|
||||
sed -i 's|^appender\.rolling\.fileName=alfresco\.log|appender.rolling.fileName=/opt/tomcat/logs/alfresco.log|' /etc/tomcat/webapps/alfresco/WEB-INF/classes/log4j2.properties
|
||||
sed -i 's|^appender\.rolling\.fileName=share\.log|appender.rolling.fileName=/opt/tomcat/logs/share.log|' /etc/tomcat/webapps/share/WEB-INF/classes/log4j2.properties
|
||||
|
||||
|
||||
echo "Alfresco has been configured"
|
||||
}
|
||||
|
||||
install_solr_rhel() {
|
||||
echo "Unzip SOLR ZIP Distribution File"
|
||||
mkdir /tmp/solr
|
||||
unzip /tmp/downloads/alfresco-search-services-2.0.9.1.zip -d /tmp/solr
|
||||
mv /tmp/solr/alfresco-search-services /opt/solr/alfresco-search-services
|
||||
echo "creating user ..."
|
||||
sudo useradd solr
|
||||
echo "Creating SOLR systemd service file..."
|
||||
cat <<EOL | sudo tee /etc/systemd/system/solr.service
|
||||
[Unit]
|
||||
Description=Apache SOLR Web Application Container
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=forking
|
||||
|
||||
User=solr
|
||||
Group=solr
|
||||
|
||||
Environment="JAVA_HOME=/usr/lib/jvm/java-17-openjdk"
|
||||
|
||||
ExecStart=/opt/solr/alfresco-search-services/solr/bin/solr start -a "-Dcreate.alfresco.defaults=alfresco,archive -Dalfresco.secureComms=secret -Dalfresco.secureComms.secret=secret"
|
||||
ExecStop=/opt/solr/alfresco-search-services/solr/bin/solr stop
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
EOL
|
||||
|
||||
echo "SELinux anpassungen werden durchgeführt...."
|
||||
ausearch -c '(solr)' --raw | audit2allow -M my-solr
|
||||
semodule -X 300 -i my-solr.pp
|
||||
|
||||
echo "Permission für für solr werden gesetzt...."
|
||||
chmod -R 755 /opt/solr/alfresco-search-services/solr/server/../../logs
|
||||
chown -R solr:solr /opt/solr/alfresco-search-services/solr/server/../../logs
|
||||
|
||||
echo "Reloading systemd daemon..."
|
||||
sudo systemctl daemon-reload
|
||||
|
||||
echo "Starting Solr service..."
|
||||
sudo systemctl start solr
|
||||
|
||||
echo "Enabling Solr service to start on boot..."
|
||||
sudo systemctl enable solr
|
||||
|
||||
echo "SOLR has been configured"
|
||||
}
|
||||
|
||||
install_transform_rhel() {
|
||||
echo "Install Repo Dependency..."
|
||||
sudo subscription-manager repos --enable codeready-builder-for-rhel-8-$(arch)-rpms
|
||||
sudo dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
|
||||
|
||||
echo "Install Transform dependencies"
|
||||
sudo dnf install -y GraphicsMagick libreoffice perl-Image-ExifTool
|
||||
|
||||
curl -L -o /tmp/downloads/alfresco-pdf-renderer-1.2-linux.tgz https://nexus.alfresco.com/nexus/repository/releases/org/alfresco/alfresco-pdf-renderer/1.2/alfresco-pdf-renderer-1.2-linux.tgz
|
||||
sudo tar xf /tmp/downloads/alfresco-pdf-renderer-1.2-linux.tgz -C /usr/bin
|
||||
|
||||
echo "Configure Transform server"
|
||||
mkdir /opt/transform
|
||||
cp /tmp/downloads/alfresco-transform-core-aio-5.1.0.jar /opt/transform
|
||||
|
||||
echo " User wird angelegt..."
|
||||
sudo useradd transform
|
||||
|
||||
echo "Creating Transform systemd service file..."
|
||||
cat <<EOL | sudo tee /etc/systemd/system/transform.service
|
||||
|
||||
[Unit]
|
||||
Description=Transform Application Container
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
|
||||
User=transform
|
||||
Group=transform
|
||||
|
||||
Environment="JAVA_HOME=/usr/lib/jvm/java-17-openjdk"
|
||||
Environment="LIBREOFFICE_HOME=/usr/lib/libreoffice"
|
||||
|
||||
ExecStart=java -jar /opt/transform/alfresco-transform-core-aio-5.1.0.jar
|
||||
ExecStop=/bin/kill -15 $MAINPID
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
EOL
|
||||
|
||||
echo "Reloading systemd daemon..."
|
||||
sudo systemctl daemon-reload
|
||||
|
||||
echo "Starting Transform service..."
|
||||
sudo systemctl start transform
|
||||
|
||||
echo "Enabling Transform service to start on boot..."
|
||||
sudo systemctl enable transform
|
||||
|
||||
echo "Transform has been configured"
|
||||
}
|
||||
|
||||
install_nginx_rhel() {
|
||||
echo "Updating system..."
|
||||
sudo yum update -y
|
||||
|
||||
echo "Installing Nginx..."
|
||||
sudo yum install -y nginx
|
||||
|
||||
echo "Creating directory for Alfresco Content App..."
|
||||
sudo mkdir -p /var/www/alfresco-content-app
|
||||
sudo cp -r /tmp/downloads/alfresco-content-app/dist/content-ce/* /var/www/alfresco-content-app
|
||||
|
||||
echo "Creating nginx systemd service file..."
|
||||
cat <<EOL | sudo tee /etc/systemd/system/nginx.service
|
||||
[Unit]
|
||||
Description=NGINX web server
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=forking
|
||||
|
||||
ExecStart=/usr/sbin/nginx
|
||||
ExecReload=/usr/sbin/nginx -s reload
|
||||
ExecStop=/usr/sbin/nginx -s stop
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
EOL
|
||||
|
||||
echo "Reloading systemd daemon..."
|
||||
sudo systemctl daemon-reload
|
||||
|
||||
echo "Starting Nginx service..."
|
||||
sudo systemctl start nginx
|
||||
|
||||
echo "Enabling Nginx to start on boot..."
|
||||
sudo systemctl enable nginx
|
||||
|
||||
echo "Nginx installation and configuration completed successfully!"
|
||||
}
|
||||
|
||||
# Functions for Ubuntu
|
||||
install_postgresql_ubuntu() {
|
||||
echo "Updating package list..."
|
||||
sudo apt update
|
||||
|
||||
echo "Installing PostgreSQL 16..."
|
||||
sudo apt install -y wget ca-certificates
|
||||
wget -qO - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
|
||||
echo "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs) pgdg" | sudo tee /etc/apt/sources.list.d/pgdg.list
|
||||
sudo apt update
|
||||
sudo apt install -y postgresql-16 postgresql-client-16
|
||||
|
||||
echo "Enable local connections"
|
||||
sudo sed -i 's/peer/trust/' /etc/postgresql/16/main/pg_hba.conf
|
||||
sudo sed -i 's/ident/md5/' /etc/postgresql/16/main/pg_hba.conf
|
||||
|
||||
echo "Starting PostgreSQL service..."
|
||||
sudo systemctl start postgresql
|
||||
|
||||
echo "Configuring Alfresco database..."
|
||||
sudo -u postgres psql -c "CREATE USER alfresco WITH PASSWORD 'alfresco';"
|
||||
sudo -u postgres psql -c "CREATE DATABASE alfresco OWNER alfresco ENCODING 'UTF8';"
|
||||
sudo -u postgres psql -c "GRANT ALL PRIVILEGES ON DATABASE alfresco TO alfresco;"
|
||||
|
||||
echo "Stopping PostgreSQL service..."
|
||||
sudo systemctl stop postgresql
|
||||
|
||||
echo "Enabling PostgreSQL to start on boot..."
|
||||
sudo systemctl enable postgresql
|
||||
|
||||
echo "PostgreSQL installation and setup completed successfully!"
|
||||
}
|
||||
|
||||
install_java_ubuntu() {
|
||||
echo "Updating package list..."
|
||||
sudo apt update
|
||||
|
||||
echo "Installing Java JDK 17..."
|
||||
sudo apt install -y openjdk-17-jdk
|
||||
|
||||
echo "Checking Java version..."
|
||||
java -version
|
||||
|
||||
echo "Java JDK 17 installation and setup completed successfully!"
|
||||
}
|
||||
|
||||
install_tomcat_ubuntu() {
|
||||
echo "Updating package list..."
|
||||
sudo apt update
|
||||
|
||||
echo "Installing Tomcat 10..."
|
||||
sudo apt install -y tomcat10 tomcat10-admin tomcat10-common tomcat10-examples
|
||||
|
||||
echo "Starting Tomcat service..."
|
||||
sudo systemctl start tomcat10
|
||||
|
||||
echo "Enabling Tomcat to start on boot..."
|
||||
sudo systemctl enable tomcat10
|
||||
|
||||
echo "Tomcat installation and setup completed successfully!"
|
||||
}
|
||||
|
||||
install_activemq_ubuntu() {
|
||||
echo "Updating package list..."
|
||||
sudo apt update
|
||||
|
||||
echo "Downloading ActiveMQ..."
|
||||
wget https://dlcdn.apache.org/activemq/5.18.5/apache-activemq-5.18.5-bin.tar.gz -O /tmp/apache-activemq-5.18.5-bin.tar.gz
|
||||
|
||||
echo "Extracting ActiveMQ..."
|
||||
sudo mkdir -p /home/ubuntu/activemq
|
||||
sudo tar xzvf /tmp/apache-activemq-5.18.5-bin.tar.gz -C /home/ubuntu/activemq --strip-components=1
|
||||
|
||||
echo "Setting permissions for ActiveMQ directories..."
|
||||
sudo chown -R ubuntu:ubuntu /home/ubuntu/activemq
|
||||
sudo chmod -R 755 /home/ubuntu/activemq
|
||||
|
||||
echo "Creating ActiveMQ systemd service file..."
|
||||
cat <<EOL | sudo tee /etc/systemd/system/activemq.service
|
||||
[Unit]
|
||||
Description=Apache ActiveMQ
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=forking
|
||||
|
||||
User=ubuntu
|
||||
Group=ubuntu
|
||||
|
||||
Environment="JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64"
|
||||
Environment="ACTIVEMQ_HOME=/home/ubuntu/activemq"
|
||||
Environment="ACTIVEMQ_BASE=/home/ubuntu/activemq"
|
||||
Environment="ACTIVEMQ_CONF=/home/ubuntu/activemq/conf"
|
||||
Environment="ACTIVEMQ_DATA=/home/ubuntu/activemq/data"
|
||||
|
||||
ExecStart=/home/ubuntu/activemq/bin/activemq start
|
||||
ExecStop=/home/ubuntu/activemq/bin/activemq stop
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
EOL
|
||||
|
||||
echo "Reloading systemd daemon..."
|
||||
sudo systemctl daemon-reload
|
||||
|
||||
echo "Starting ActiveMQ service..."
|
||||
sudo systemctl start activemq
|
||||
|
||||
echo "Enabling ActiveMQ service to start on boot..."
|
||||
sudo systemctl enable activemq
|
||||
|
||||
echo "Apache ActiveMQ installation and setup completed successfully!"
|
||||
}
|
||||
|
||||
install_solr_ubuntu() {
|
||||
echo "Unzip SOLR ZIP Distribution File"
|
||||
mkdir /tmp/solr
|
||||
unzip downloads/alfresco-search-services-2.0.9.1.zip -d /tmp/solr
|
||||
mv /tmp/solr/alfresco-search-services /home/ubuntu
|
||||
|
||||
echo "Creating SOLR systemd service file..."
|
||||
cat <<EOL | sudo tee /etc/systemd/system/solr.service
|
||||
[Unit]
|
||||
Description=Apache SOLR Web Application Container
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=forking
|
||||
|
||||
User=ubuntu
|
||||
Group=ubuntu
|
||||
|
||||
Environment="JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64"
|
||||
|
||||
ExecStart=/home/ubuntu/alfresco-search-services/solr/bin/solr start -a "-Dcreate.alfresco.defaults=alfresco,archive -Dalfresco.secureComms=secret -Dalfresco.secureComms.secret=secret"
|
||||
ExecStop=/home/ubuntu/alfresco-search-services/solr/bin/solr stop
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
EOL
|
||||
|
||||
echo "Reloading systemd daemon..."
|
||||
sudo systemctl daemon-reload
|
||||
|
||||
echo "Starting Solr service..."
|
||||
sudo systemctl start solr
|
||||
|
||||
echo "Enabling Solr service to start on boot..."
|
||||
sudo systemctl enable solr
|
||||
|
||||
echo "SOLR has been configured"
|
||||
}
|
||||
|
||||
install_transform_ubuntu() {
|
||||
echo "Install Transform dependencies"
|
||||
sudo apt install -y imagemagick libreoffice exiftool
|
||||
|
||||
curl -L -o /tmp/alfresco-pdf-renderer-1.2-linux.tgz https://nexus.alfresco.com/nexus/repository/releases/org/alfresco/alfresco-pdf-renderer/1.2/alfresco-pdf-renderer-1.2-linux.tgz
|
||||
sudo tar xf /tmp/alfresco-pdf-renderer-1.2-linux.tgz -C /usr/bin
|
||||
|
||||
echo "Configure Transform server"
|
||||
mkdir /home/ubuntu/transform
|
||||
cp downloads/alfresco-transform-core-aio-5.1.0.jar /home/ubuntu/transform
|
||||
|
||||
echo "Creating Transform systemd service file..."
|
||||
cat <<EOL | sudo tee /etc/systemd/system/transform.service
|
||||
[Unit]
|
||||
Description=Transform Application Container
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
|
||||
User=ubuntu
|
||||
Group=ubuntu
|
||||
|
||||
Environment="JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64"
|
||||
Environment="LIBREOFFICE_HOME=/usr/lib/libreoffice"
|
||||
|
||||
ExecStart=java -jar /home/ubuntu/transform/alfresco-transform-core-aio-5.1.0.jar
|
||||
ExecStop=/bin/kill -15 $MAINPID
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
EOL
|
||||
|
||||
echo "Reloading systemd daemon..."
|
||||
sudo systemctl daemon-reload
|
||||
|
||||
echo "Starting Transform service..."
|
||||
sudo systemctl start transform
|
||||
|
||||
echo "Enabling Transform service to start on boot..."
|
||||
sudo systemctl enable transform
|
||||
|
||||
echo "Transform has been configured"
|
||||
}
|
||||
|
||||
install_nginx_ubuntu() {
|
||||
echo "Updating system..."
|
||||
sudo apt update
|
||||
|
||||
echo "Installing Nginx..."
|
||||
sudo apt install -y nginx
|
||||
|
||||
echo "Creating directory for Alfresco Content App..."
|
||||
sudo mkdir -p /var/www/alfresco-content-app
|
||||
sudo cp -r /home/ubuntu/alfresco-content-app/dist/content-ce/* /var/www/alfresco-content-app
|
||||
|
||||
echo "Creating nginx systemd service file..."
|
||||
cat <<EOL | sudo tee /etc/systemd/system/nginx.service
|
||||
[Unit]
|
||||
Description=NGINX web server
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=forking
|
||||
|
||||
ExecStart=/usr/sbin/nginx
|
||||
ExecReload=/usr/sbin/nginx -s reload
|
||||
ExecStop=/usr/sbin/nginx -s stop
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
EOL
|
||||
|
||||
echo "Reloading systemd daemon..."
|
||||
sudo systemctl daemon-reload
|
||||
|
||||
echo "Starting Nginx service..."
|
||||
sudo systemctl start nginx
|
||||
|
||||
echo "Enabling Nginx to start on boot..."
|
||||
sudo systemctl enable nginx
|
||||
|
||||
echo "Nginx installation and configuration completed successfully!"
|
||||
}
|
||||
|
||||
# Run the appropriate installation based on the OS
|
||||
if [ "$OS" == "RHEL" ]; then
|
||||
#download_files
|
||||
#install_postgresql_rhel
|
||||
#install_java_rhel
|
||||
#install_tomcat_rhel
|
||||
#install_activemq_rhel
|
||||
install_alfresco_rhel
|
||||
#install_solr_rhel
|
||||
#install_transform_rhel
|
||||
#install_nginx_rhel
|
||||
elif [ "$OS" == "Ubuntu" ]; then
|
||||
download_files
|
||||
install_postgresql_ubuntu
|
||||
install_java_ubuntu
|
||||
install_tomcat_ubuntu
|
||||
install_activemq_ubuntu
|
||||
install_solr_ubuntu
|
||||
install_transform_ubuntu
|
||||
install_nginx_ubuntu
|
||||
else
|
||||
echo "Unsupported OS"
|
||||
fi
|
||||
Reference in New Issue
Block a user