-
-
Save cleydyr/95db7654ca2d915ddf3d8fe2e2c04fbe to your computer and use it in GitHub Desktop.
# Install Postgresql 9.6 | |
sudo yum install -y postgresql-server postgresql-contrib java-1.8.0-openjdk java-1.8.0-openjdk-devel tomcat | |
sudo postgresql-setup initdb | |
# Permite a autenticação com senha no Postgres | |
echo "Habilitando a autenticação com senha no PostgreSQL" | |
sudo sed -i -e 's/ident$/md5/g' /var/lib/pgsql/data/pg_hba.conf | |
# Habilita e inicia serviço do PosgreSQL | |
echo "Habilitando e iniciando serviço do PosgreSQL" | |
sudo systemctl enable postgresql | |
sudo systemctl start postgresql | |
# Cria senha padrão para o PostgreSQL | |
echo "Criando senha padrão para o PostgreSQL" | |
sudo su - postgres -c "psql -o /dev/null -U postgres -c "'"'"ALTER USER postgres WITH PASSWORD 'abracadabra'"'"'""; | |
# Cria usuário biblivre e o banco de dados básico biblivre4 | |
echo "Criando estrutura básica do banco de dados" | |
sudo su - postgres -c "wget --quiet -O - https://raw.githubusercontent.com/cleydyr/Biblivre-5/5.1.0/sql/createdatabase.sql | psql -o /dev/null -U postgres" | |
# Cria o esquema básico do Biblivre (isso pode demorar um pouco) | |
echo "Criando esquemas e populando dados para primeira instalação Biblivre 5" | |
sudo su - postgres -c "wget --quiet -O - https://raw.githubusercontent.com/cleydyr/Biblivre-5/5.1.0/sql/biblivre4.sql | psql -o /dev/null -U postgres -d biblivre4" | |
# Cria arquivo de configurações padrão para o Tomcat rodar o Biblivre | |
echo "Criando arquivo de configurações padrão para o Tomcat rodar o Biblivre" | |
sudo sh -c "echo 'JAVA_OPTS="'"'"-Djava.security.egd=file:/dev/./urandom -Djava.awt.headless=true -Xmx512m -XX:MaxPermSize=256m -XX:+UseConcMarkSweepGC"'"'"' >> /etc/tomcat/conf.d/biblivre.conf" | |
# Baixa o Biblivre 5 atualizado do repositório de cleydyr | |
echo "Baixando o Biblivre 5 atualizado" | |
echo 'https://github.com/cleydyr/biblivre/releases/download'`wget --spider -SO- https://github.com/cleydyr/biblivre/releases/latest 2>&1 >/dev/null | grep "Location:" | head -n1 | egrep -o "/v.*$"`"/Biblivre4.war" | tr -d "\r" | xargs wget -O /tmp/Biblivre4.war | |
# Implanta o Biblivre 5 direto no Tomcat | |
echo "Implantando o Biblivre 5 direto no Tomcat" | |
sudo unzip -q /tmp/Biblivre4.war -d /var/lib/tomcat/webapps/Biblivre4 | |
# Libera a porta padrão do Tomcat (8080) no firewall | |
echo "Liberando a porta padrão do Tomcat (8080) no firewall" | |
sudo firewall-cmd --zone=public --permanent --add-port=8080/tcp | |
sudo firewall-cmd --zone=public --add-port=8080/tcp | |
# Permite o Tomcat rodar mais permissivamente, sem restrições da política SELinux | |
echo "Liberando o Tomcat da política SELinux" | |
sudo semanage permissive -a tomcat_t | |
# Inicia e habilita o tomcat | |
echo "Habilitando e iniciando serviço do Tomcat" | |
sudo systemctl enable tomcat | |
sudo systemctl start tomcat |
Boa tarde !
Instalei do zero o sistema operacional afim de evitar possíveis problemas.
Para que este comando seja executado com sucesso:
"sudo semanage permissive -a tomcat_t"
Tive que instalar o pacote policycoreutils-python
Rodei o comando solicitado no post acima e instalou tudo certo.
Mas agora tenho um erro diferente ao tentar realizar a importação:
[root@biblivre5 ~]# cat /etc/centos-release
CentOS Linux release 7.7.1908 (Core)
[root@biblivre5 ~]# psql --version
psql (PostgreSQL) 9.2.24
[Log de restauração de backup do BIBLIVRE 5]
single_schema => single_schema
Restoring 2 schemas for a total of 178561 SQL lines
Starting psql
Renaming schema single to _single_1597257711998
Renaming schema global to _global_1597257711998
Processing schema for 'global'
Processing data for 'global'
ALTER SCHEMA
ALTER SCHEMA
SET
psql::11: ERRO: parâmetro de configuração "lock_timeout" desconhecido
Oi, @cainadacosta. Você trouxe esse backup de uma instalação com versão 9.3 ou mais recente. Seu Postgres é versão 9.2.24 e nessa versão não tem o parâmetro lock_timeout
.
Para resolver, você pode remover isso na mão extraindo o arquivo de backup e apagando essa configuração dos arquivos SQL. Provavelmente você vai ter que fazer isso mais de uma vez até que nenhuma configuração estranha ao 9.2 exista no arquivo SQL.
Uma alternativa é instalar uma versão mais recente do PostgreSQL no seu sistema, que deve ser retrocompatível com a versão 9.1 e, portanto, compatível com o Biblivre.
@cainadacosta, fyi, eu acabei de lançar a versão v5.2.1 do Biblivre no meu repositório.
Olá @cleydyr será que pode me tirar uma duvida? Existe alguma amarração na compilação do biblivre que obrigue o banco a ser localhost ou seja no mesmo servidor. Na minha infra eu faço segregação de aplicação e banco de dados então gostaria de ter a aplicação biblivre executando em um servidor e a base de dados no meu servidor postgres de produção.
@ohlifrimla. No Biblivre 5 oficial (assim como no meu branch 5.x) tem essa amarração; o localhost está hard-coded no próprio Java. No 5.x eu não quis mexer muito para deixá-lo mais estável e familiar, ou seja, é só uma versão de manutenção. Mas você pode usar a versão master onde já é possível configurar isso por meio variáveis de ambiente. Aí você terá que compilar o software manualmente assim como instalar as dependências corretas. Dá uma olhada no README do master. Esse fim de semana devo incorporar instruções de instalação manual mais detalhadas partindo do pull request #308.
Olá @cleydyr Tudo bem?
Eu estou tentando a partir de seu script fazer a instalação no Rocky linux 8.5 porém, nesta parte do script ele não está conseguindo se conectar no server da amazon:
Baixa o Biblivre 5 atualizado do repositório de cleydyr echo "Baixando o Biblivre 5 atualizado" echo 'https://github.com/cleydyr/biblivre/releases/download'
wget -SO- https://github.com/cleydyr/biblivre/releases/latest 2>&1 >/dev/null | grep location | egrep -o "/v.*$""/Biblivre4.war" | tr -d "\r" | xargs wget -O /tmp/Biblivre4.war
Aí quando executo ele volta isso:
`Resolvendo data (data)... falhou: Name or service not known.
wget: não foi possível resolver endereço de máquina “data”
--2022-05-31 15:33:38-- http://github.githubassets.com/
Resolvendo github.githubassets.com (github.githubassets.com)... 185.199.108.154, 185.199.109.154, 185.199.110.154, ...
Conectando-se a github.githubassets.com (github.githubassets.com)|185.199.108.154|:80... conectado.
A requisição HTTP foi enviada, aguardando resposta... 301 Moved Permanently
Localização: https://github-gh-origin.s3-website-us-east-1.amazonaws.com/ [redirecionando]
--2022-05-31 15:33:38-- https://github-gh-origin.s3-website-us-east-1.amazonaws.com/
Resolvendo github-gh-origin.s3-website-us-east-1.amazonaws.com (github-gh-origin.s3-website-us-east-1.amazonaws.com)... 52.217.169.205
Conectando-se a github-gh-origin.s3-website-us-east-1.amazonaws.com (github-gh-origin.s3-website-us-east-1.amazonaws.com)|52.217.169.205|:443... falhou: Connection timed out.
Tentando novamente.
--2022-05-31 15:35:51-- (tentativa: 2) https://github-gh-origin.s3-website-us-east-1.amazonaws.com/
Conectando-se a github-gh-origin.s3-website-us-east-1.amazonaws.com (github-gh-origin.s3-website-us-east-1.amazonaws.com)|52.217.169.205|:443... falhou: Connection timed out.
Tentando novamente.
--2022-05-31 15:38:03-- (tentativa: 3) https://github-gh-origin.s3-website-us-east-1.amazonaws.com/
Conectando-se a github-gh-origin.s3-website-us-east-1.amazonaws.com (github-gh-origin.s3-website-us-east-1.amazonaws.com)|52.217.169.205|:443... falhou: Connection timed out.
Tentando novamente.`
No mais, desde o início do script foi tudo bem, apenas a parte de instalar o tomcat no Rocky Linux, mas no mais o resto está indo em frente. Pensamos em utilizar o serviço em nossa biblioteca municipal. Se vc puder me ajudar depois publico no Github, claro, com as devidas credencias.
Grato pela atenção
Douglas
Oi, @doguibnu . O que você está encontrando é um bug no script e não afeta somente o Rocky Linux.
Ao que parece o servidor agora retorna o cabeçalho como Location
em vez de location
e assim o primeiro grep
não está filtrando os cabeçalhos desejados.
Vou alterar o script para corrigir esse problema e você testa novamente.
Olá @cleydyr
Tudo bem contigo?
Obrigado pela atenção e resposta. Executei aqui e já foi pra frente.
Vamos continuar
Muito obrigado e tudo de bom!
Douglas
Oi, @doguibnu . O que você está encontrando é um bug no script e não afeta somente o Rocky Linux.
Ao que parece o servidor agora retorna o cabeçalho como
Location
em vez delocation
e assim o primeirogrep
não está filtrando os cabeçalhos desejados.Vou alterar o script para corrigir esse problema e você testa novamente.
Olá @cleydyr
Boa tarde!
Acredto que ainda faltou alguns ajustes para que possa rodar ok.
para acessar o serviço é http://ip/Biblivre4 certo?
Devido a instalação do Tomcat, creio que eu deva fazer algum ajuste. Vou te passar umas telas de como está nesse momento aqui:
Tela do terminal do Postgres
Preciso abrir a porta 5432 também no firewall?
Tela terminal de instalação do Biblivre
cito que na hora de descompactar o biblivre4.war troquei o caminho para a tela do caminho acima. Acredito que estou quase lá!
Qual seria sua sugestão por gentileza?
Obrigado!
Eita, @doguibnu . Eu acho que o Tomcat 10 não vai funcionar. Nem o Tomcat 9. O Biblivre deve ficar todo quebrado porque essas versões mais novas revelam um bug do Biblivre. Aí tu ia ter que ou instalar uma versão mais antiga do Tomcat ou esperar por uma versão nova do Biblivre 5 legado que seja compatível com esse servidor.
Sim. O endereço do Biblivre é http://ip:port/Biblivre4. Mas, como eu disse, tu deve ver a aplicação toda quebrada (sem conteúdo estático, ou seja, sem as folhas de estilo ou imagens carregadas e sem comportamento dinâmico).
Olá @cleydyr !
Eu não sou nenhum master em tomcat não, mas já tive a experiência de ter passado por isso em outra situação que a empresa usava apenas a versão x do tomcat.
Sem problemas pra refazer a máquina. Ainda não é a de produção não! Eu posso sim instalar uma versão apropriada que funcione de forma correta o Biblivre.
Qual versão do tomcar vc sugere instalar
Grato pela atenção e ajuda!
Douglas
@doguibnu, eu sugeriria instalar a versão 7 se estiver disponível, que é a original do Biblivre oficial e vai te dar menos dor de cabeça. Mas a versão 7 está bem defasada e já não é mais suportada.
Ola @cleydyr
Eu consegui achar o Tomcat 7.0.42.
Pelo menos abriu aqui no rocky Linux 8.5
Se for isso agora precisamos saber administrar o cara, fazer e voltar backup.
Aguardo tua resposta e desde já agradeço sua atenção e ajuda. Documentei todo passo a passo, seguindo teu script.
Se estiver ok Publico no github!
Obrigado Cleydyr
Parece estar tudo ok com a sua instância, @doguibnu . :D Bom trabalho e sucesso com a implantação.
Olá @cleydyr !
Muito Obrigado por toda tua atenção e ajuda. Já Publiquei também, com as devidas credenciais.
Tudo de bom e sucesso!
Olá Boa Tarde !
Estou tentando instalar porem esta dando este erro:
echo 'https://github.com/cleydyr/biblivre/releases/download'`wget --spider -SO- https://github.com/cleydyr/biblivre/releases/latest 2>&1 >/dev/null | grep "Location:" | egrep -o "/v.*$"`"/Biblivre4.war" | tr -d "\r" | xargs wget -O /tmp/Biblivre4.war
--2023-01-10 18:28:47-- https://github.com/cleydyr/biblivre/releases/download/v5.2.32
Resolving github.com (github.com)... 20.201.28.151
Connecting to github.com (github.com)|20.201.28.151|:443... connected.
HTTP request sent, awaiting response... 404 Not Found
2023-01-10 18:28:47 ERROR 404: Not Found.
Oi, @Paulojoserc . Acho que foi alguma gracinha do wget
em novas atualizações. Pode compartilhar a versão do seu wget?
Eu testei num Ubuntu 22.04 e reproduzi o problema. O wget está jogando na saída padrão outra linha com "Location" que eu não previa. O comando vai ter que ser alterado para ficar assim agora:
echo 'https://github.com/cleydyr/biblivre/releases/download'`wget --spider -SO- https://github.com/cleydyr/biblivre/releases/latest 2>&1 >/dev/null | grep "Location:" | head -n1 | egrep -o "/v.*$"`"/Biblivre4.war" | tr -d "\r" | xargs wget -O /tmp/Biblivre4.war
GNU Wget 1.19.5 built on linux-gnu.
-cares +digest +gpgme +https +ipv6 +iri +large-file +metalink +nls
+ntlm +opie +psl +ssl/gnutls
Eu fiz a atualização do script para incluir o pipe para o head. Pode testar se funciona agora?
Deu certo !
Tudo joia?
Notei já há algum tempo (uns 4 anos, rssss) que você é bastante atuante no Biblivre, tendo inclusive realizado diversas correções no código fonte do Biblivre5. A última versão oficial, a 5.0.5 (se a minha memória não falha) é de 2016/2017. De lá pra cá, não tenho visto mais nenhuma movimentação da comunidade desenvolvedora oficial. Você sabe dizer se estão trabalhando em alguma nova versão maior (tipo, um Biblivre6) ou menor (tipo, um Biblivre 5.0.6)? Instalei as correções que você fez (substituindo o arquivo Biblivre4.war) e funcionou direitinho; coisas que davam problema anteriormente (como a reserva de livros) rodam bem agora; o que impede delas serem oficialmente adotadas? O projeto Biblivre foi definitivamente descontinuado? Outra coisa: você pretende revisar e atualizar o script de instalação do Biblivre para Linux Ubuntu 22.04? Grato.
você pretende revisar e atualizar o script de instalação do Biblivre para Linux Ubuntu 22.04?
Eu tratei de um problema no script para a versão 22.04 do Ubuntu um comentário acima do seu e recebi um retorno positivo. Você encontrou algum problema ao executar o script?
Você sabe dizer se estão trabalhando em alguma nova versão maior (tipo, um Biblivre6) ou menor (tipo, um Biblivre 5.0.6)?
o que impede delas serem oficialmente adotadas?
O projeto Biblivre foi definitivamente descontinuado?
Recomendo fazer essas perguntas no fórum oficial para dar mais visibilidade e receber a resposta dos donos do projeto oficial.
Olá @cleydyr estou precisando instalar o Biblivre em uma biblioteca comunitária em um ambiente com Docker e Docker composse (almalinux 9.3), tem algum passa a passo para executar ele no Docker? Estou iniciando no Docker e estou batendo cabeça para executar a instalação.
@cainadacosta
Eu fiz uma instalação do CentOS 7 no Parallels.
Eu alterei o script neste gist (troquei só o Location por location).
Agora é possível executar
O script faz toda a instalação automaticamente sem precisar instalar nenhum pacote adicional além dos que já são instalados pelo próprio scripts. Eu consegui importar um backup do Biblivre 5, mas não consegui importar um backup do Biblivre 3. Obtive o mesmo erro que você mencionou. Agora tudo indica que a minha que minha versão do Biblivre é que tem um bug. Vou investigar isso depois, mas já registrei uma ocorrência para isso.