Script de instalação Metabase
metabase-install.sh (103 downloads )#!/bin/bash
# Para Centos 7
# Metabase, Openjdk 1.8, Postgresql-15, Nginx como proxy
# Banco: metabseappdb
#
# Por Ronaldo davi
# 27/04/2023
# Versão 1.0.0.6
# Desativando selinux
setenforce 0
wait
sudo sed -i ‘s/enforcing/disabled/g’ /etc/selinux/config /etc/selinux/config
setsebool -P httpd_can_network_connect_db 1
systemctl stop firewalld
systemctl disable firewalld
wait
yum -y update
wait
yum install -y epel-release yum-utils
wait
sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
wait
sleep 5
sudo yum install -y postgresql15-server
wait
sleep 5
sudo /usr/pgsql-15/bin/postgresql-15-setup initdb
wait
sudo systemctl enable postgresql-15
sudo systemctl start postgresql-15
wait
sudo -u postgres createdb metabaseappdb
wait
rm -rf /var/lib/pgsql/15/data/pg_hba.conf
echo ”
# TYPE DATABASE USER ADDRESS METHOD
# “local” is for Unix domain socket connections only
local all all peer
# IPv4 local connections:
host all all 127.0.0.1/32 trust
host all all 0.0.0.0/0 trust
# IPv6 local connections:
host all all ::1/128 trust
# Allow replication connections from localhost, by a user with the
# replication privilege.
local replication all peer
host replication all 127.0.0.1/32 trust
host replication all ::1/128 trust
” >> /var/lib/pgsql/15/data/pg_hba.conf
wait
systemctl restart postgresql-15
wait
yum -y install java-1.8.0-openjdk vim wget epel-release
wait
readlink -f /usr/bin/java | sed “s:/jre/bin/java::”
wait
echo “export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.362.b08-1.el7_9.x86_64″ | tee -a /etc/profile
wait
source /etc/profile
wait
wget http://downloads.metabase.com/v0.29.3/metabase.jar
wait
adduser –home-dir /var/metabase –comment=”Metabase User” –shell /sbin/nologin metabase
wait
mv metabase.jar /var/metabase
wait
chown metabase:metabase -R /var/metabase
wait
#touch /var/metabase/metabase.env
echo ”
if $programname == ‘metabase’ then /var/log/metabase.log
& stop
” >> /etc/rsyslog.d/metabase.conf
#sudo chown syslog:adm /var/log/metabase.log
wait
sudo systemctl restart rsyslog.service
echo ”
MB_PASSWORD_COMPLEXITY=normal
MB_DB_TYPE=postgres
MB_DB_DBNAME=metabaseappdb
MB_DB_PORT=5432
MB_DB_USER=postgres
MB_DB_PASS=q1w2e3r4
MB_DB_HOST=localhost
MB_EMOJI_IN_LOGS=true
# any other env vars you want available to Metabase
” >> /etc/default/metabase
wait
echo “[Unit]
Description=Metabase server
After=syslog.target
After=network.target
[Service]
EnvironmentFile=/etc/default/metabase
User=metabase
Group=metabase
Type=simple
ExecStart=/usr/bin/java -jar /var/metabase/metabase.jar
Restart=always
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=metabase
[Install]
WantedBy=multi-user.target ” >> /etc/systemd/system/metabase.service
wait
systemctl enable metabase
systemctl start metabase
systemctl status metabase
systemctl status postgresql-15
yum -y install nginx
systemctl start nginx
systemctl enable nginx
echo ” server {
listen 80;
server_name metabase.example.com;
access_log /var/log/nginx/metabase.access.log;
error_log /var/log/nginx/metabase.error.log;
location / {
proxy_pass http://localhost:3000;
}
} ” >> /etc/nginx/conf.d/metabase.conf
systemctl restart nginx
systemctl status metabase