Instalando o Fuel CMS no Ubuntu 16.04 LTS
Usando um sistema diferente? O Fuel CMS é um sistema de gerenciamento de conteúdo baseado em CodeIgniter. Seu código fonte está hospedado no GitHub. Este guia mostra como você pode
O dotCMS é um sistema de gerenciamento de conteúdo de nível empresarial de código aberto escrito em Java. Ele contém quase todos os recursos necessários para criar um site para o seu negócio. Ele fornece uma API RESTful para integrar com outros serviços, como CRM, aplicativos móveis e muito mais. Ele usa o Elasticsearch para indexação de conteúdo em tempo real e o Redis para implementar o cache de várias camadas.
Este artigo foi escrito para o dotCMS 4.2.2, no entanto, as instruções fornecidas também podem funcionar para versões mais recentes.
Neste tutorial, usaremos 192.168.0.1
como endereço IP público e cms.example.com
como nome de domínio apontado para a instância do Vultr. Certifique-se de substituir todas as ocorrências do exemplo de nome de domínio e endereço IP público pelo nome real.
Atualize seu sistema básico usando o guia Como atualizar o CentOS 7 . Depois que seu sistema for atualizado, continue com a instalação do Java.
O OpenJDK pode ser facilmente instalado, pois o pacote está disponível no repositório YUM padrão.
sudo yum -y install java-1.8.0-openjdk-devel
Se o Java estiver instalado corretamente, você poderá verificar sua versão.
java -version
Você obterá uma saída semelhante.
[user@vultr ~]$ java -version
openjdk version "1.8.0_151"
OpenJDK Runtime Environment (build 1.8.0_151-b12)
OpenJDK 64-Bit Server VM (build 25.151-b12, mixed mode)
Antes de prosseguirmos, precisaremos configurar as variáveis de ambiente JAVA_HOME
e JRE_HOME
. Encontre o caminho absoluto do executável Java no seu sistema.
readlink -f $(which java)
Você verá uma saída semelhante.
[user@vultr ~]$ readlink -f $(which java)
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64/jre/bin/java
Agora, configure as variáveis de ambiente JAVA_HOME
e de JRE_HOME
acordo com o caminho do diretório Java.
echo "export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64" >> ~/.bash_profile
echo "export JRE_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64/jre" >> ~/.bash_profile
Execute o bash_profile
arquivo
source ~/.bash_profile
Agora você pode executar o echo $JAVA_HOME
comando para garantir que a variável de ambiente esteja configurada.
[user@vultr ~]$ echo $JAVA_HOME
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64
Por padrão, o dotCMS está configurado para usar o mecanismo de banco de dados H2. O mecanismo de banco de dados H2 é um mecanismo de banco de dados baseado em arquivo simples. Não é recomendado usar na produção. Neste tutorial, usaremos o servidor PostgreSQL para armazenar o banco de dados dotCMS.
O PostgreSQL é um sistema de banco de dados objeto-relacional e conhecido por sua estabilidade e velocidade. Adicione o repositório da versão mais recente do PostgreSQL ao sistema.
sudo yum -y install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-1.noarch.rpm
Instale o servidor de banco de dados PostgreSQL.
sudo yum -y install postgresql10-server postgresql10-contrib postgresql10
Inicialize o banco de dados.
sudo /usr/pgsql-10/bin/postgresql-10-setup initdb
Inicie o servidor PostgreSQL e ative-o automaticamente no momento da inicialização.
sudo systemctl start postgresql-10
sudo systemctl enable postgresql-10
Mude a senha do usuário padrão do PostgreSQL.
sudo passwd postgres
Efetue login como usuário padrão do PostgreSQL.
sudo su - postgres
Crie um novo usuário do PostgreSQL para o dotCMS.
createuser dotcms
O PostgreSQL fornece o psql
shell para executar consultas no servidor de banco de dados. Mude para o shell do PostgreSQL.
psql
Defina uma senha para o usuário recém-criado para o banco de dados dotCMS.
ALTER USER dotcms WITH ENCRYPTED password 'DBPassword';
Substitua a senha do usuário do banco de dados DBPassword
por uma senha segura. Crie um novo banco de dados para a instalação do dotCMS.
CREATE DATABASE dotcms OWNER dotcms;
Saia do psql
shell.
\q
Mude para o sudo
usuário.
exit
Faça o download do arquivo dotCMS.
wget https://dotcms.com/physical_downloads/release_builds/dotcms_4.2.2.tar.gz
Você sempre pode encontrar o link para a versão mais recente do aplicativo na página de download do dotCMS .
Crie um novo diretório para armazenar os arquivos dotCMS e extraí-los.
sudo mkdir /opt/dotcms
sudo tar -zxf dotcms*.tar.gz -C /opt/dotcms
Abra o arquivo de configuração do banco de dados.
cd /opt/dotcms
sudo nano dotserver/tomcat-*/webapps/ROOT/META-INF/context.xml
Encontre o H2
bloco.
<!-- H2 -->
<Resource name="jdbc/dotCMSPool" auth="Container"
...
validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
Comente a H2
seção inteira substituindo o delimitador de comentários -->
do início da seção até o final da seção. Deve parecer com o seguinte.
<!-- H2
<Resource name="jdbc/dotCMSPool" auth="Container"
...
validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
-->
Remova o comentário da seção PostgreSQL removendo o delimitador de comentários -->
do final da seção e colocando-o na parte superior POSTGRESQL
. Além disso, encontre username=
e password=
substitua os valores existentes pelo nome de usuário e senha do seu usuário do banco de dados PostgreSQL. Se você tiver usado um nome de banco de dados diferente de dotcms
, precisará alterar o nome do banco de dados url=
. Uma vez configurado, o bloco PostgreSQL no arquivo deve se parecer com o seguinte.
<!-- POSTGRESQL -->
<Resource name="jdbc/dotCMSPool" auth="Container"
type="javax.sql.DataSource"
factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
driverClassName="org.postgresql.Driver"
url="jdbc:postgresql://localhost/dotcms"
username="dotcms" password="DBPassword" maxTotal="60" maxIdle="10" maxWaitMillis="60000"
removeAbandonedOnBorrow="true" removeAbandonedOnMaintenance="true" removeAbandonedTimeout="60" logAbandoned="true"
timeBetweenEvictionRunsMillis="30000" validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
Forneça a permissão de execução para todos os arquivos executáveis.
sudo chmod 755 ./bin/*.sh
sudo chmod 755 dotserver/tomcat-*/bin/*.sh
O dotCMS agora está instalado no seu servidor. Para executar o aplicativo imediatamente, execute o seguinte.
cd /opt/dotcms
sudo bin/startup.sh
Você verá a seguinte saída quando o servidor iniciar com êxito.
[user@vultr dotcms]$ sudo bin/startup.sh
Using DOTCMS_HOME = /opt/dotcms/dotserver/tomcat-8.0.18/webapps/ROOT
Using DOTSERVER = dotcms
Using CATALINA_PID = /tmp/dotcms.pid
Using JAVA_OPTS = -Djava.awt.headless=true -Xverify:none -Dfile.encoding=UTF8 -server -XX:+DisableExplicitGC -XX:MaxMetaspaceSize=512m -Xmx1G -XX:+UseG1GC -javaagent:/opt/dotcms/dotserver/tomcat-8.0.18/webapps/ROOT/WEB-INF/lib/byte-buddy-agent-1.6.12.jar -Ddotserver=dotcms
Using CATALINA_BASE: /opt/dotcms/dotserver/tomcat-8.0.18
Using CATALINA_HOME: /opt/dotcms/dotserver/tomcat-8.0.18
Using CATALINA_TMPDIR: /opt/dotcms/dotserver/tomcat-8.0.18/temp
Using JRE_HOME: /
Using CLASSPATH: /opt/dotcms/dotserver/tomcat-8.0.18/bin/bootstrap.jar:/opt/dotcms/dotserver/tomcat-8.0.18/bin/tomcat-juli.jar
Using CATALINA_PID: /tmp/dotcms.pid
Tomcat started.
O comando acima iniciará o servidor da web Tomcat para atender ao aplicativo na porta 8080
. Para verificar se o site do dotCMS está funcionando, permita a porta necessária 8080
através do firewall do sistema.
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
sudo firewall-cmd --reload
Abra seu navegador favorito e navegue até http://192.168.0.1:8080
. Você deve ver que o aplicativo está executando um site de demonstração. Se você não vê o seu site, aguarde, pois a primeira inicialização do servidor dotCMS leva alguns minutos, enquanto grava dados no banco de dados PostgreSQL e cria o cache. Você também pode verificar os logs de inicialização.
tail -n 1000 -f /opt/dotcms/dotserver/tomcat-*/webapps/ROOT/dotsecure/logs/dotcms.log
O servidor dotCMS pode ser iniciado diretamente usando o script de inicialização fornecido no pacote do instalador. Por uma questão de conveniência, você deve configurar um arquivo de unidade Systemd para o servidor dotCMS. Isso garantirá que o servidor de aplicativos seja iniciado automaticamente na reinicialização e nas falhas do sistema.
Pare o servidor dotCMS em execução usando o script de encerramento.
sudo bin/shutdown.sh
Crie um usuário não privilegiado para executar o servidor dotCMS, por motivos de segurança.
sudo adduser -d /opt/dotcms -s /sbin/nologin dotcms
Forneça a propriedade dos arquivos para o usuário do dotCMS.
sudo chown -R dotcms:dotcms /opt/dotcms
Crie um novo serviço Systemd.
sudo nano /etc/systemd/system/dotcms.service
Preencher o arquivo.
[Unit]
Description=dotCMS service
After=syslog.target network.target
[Service]
Type=forking
ExecStart=/opt/dotcms/bin/startup.sh
ExecStop=/opt/dotcms/bin/shutdown.sh
User=dotcms
Group=dotcms
Restart=always
[Install]
WantedBy=multi-user.target
Inicie o aplicativo e ative-o automaticamente no momento da inicialização.
sudo systemctl start dotcms
sudo systemctl enable dotcms
Verifique se o serviço está em execução.
sudo systemctl status dotcms
Por padrão, o servidor dotCMS escuta na porta 8080
. Vamos configurar o Nginx como proxy reverso para que o aplicativo possa ser acessado via padrão HTTP
e HTTPS
portas. Também configuraremos o Nginx para usar SSL gerado com o SSL gratuito Let's Encrypt.
Instale o servidor da web Nginx.
sudo yum -y install nginx
Inicie o servidor da web e ative-o automaticamente no momento da inicialização.
sudo systemctl start nginx
sudo systemctl enable nginx
Instale o Certbot, que é um aplicativo cliente do Let's Encrypt CA.
sudo yum -y install certbot
Antes de poder solicitar os certificados, será necessário permitir as portas 80
e / 443
ou os serviços HTTP
e padrão HTTPS
através do firewall. Além disso, remova a porta 8080
da lista de exceções do firewall, pois ela não é mais necessária.
sudo firewall-cmd --zone=public --remove-port=8080/tcp --permanent
sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewall-cmd --zone=public --add-service=https --permanent
sudo firewall-cmd --reload
Nota: Para obter certificados da Let's Encrypt CA, o domínio para o qual os certificados devem ser gerados deve estar apontado para o servidor. Caso contrário, faça as alterações necessárias nos registros DNS do domínio e aguarde a propagação do DNS antes de fazer a solicitação de certificado novamente. O Certbot verifica a autoridade do domínio antes de fornecer os certificados.
Gere os certificados SSL.
sudo certbot certonly --webroot -w /usr/share/nginx/html -d cms.example.com
É provável que os certificados gerados sejam armazenados /etc/letsencrypt/live/cms.example.com/
. Os certificados Let's Encrypt expiram em 90 dias, portanto, é recomendável configurar a renovação automática dos certificados usando trabalhos Cron.
Abra o arquivo de tarefa cron.
sudo crontab -e
Adicione a seguinte linha no final do arquivo.
30 5 * * * /usr/bin/certbot renew --quiet
O trabalho cron acima será executado todos os dias às 05:30. Se o certificado estiver vencido, ele será renovado automaticamente.
Crie um novo arquivo de bloqueio de servidor para o site dotCMS.
sudo nano /etc/nginx/conf.d/cms.example.com.conf
Preencher o arquivo.
server {
listen 80;
server_name cms.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443;
server_name cms.example.com;
ssl_certificate /etc/letsencrypt/live/cms.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/cms.example.com/privkey.pem;
ssl on;
ssl_session_cache builtin:1000 shared:SSL:10m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
ssl_prefer_server_ciphers on;
access_log /var/log/nginx/dotcms.access.log;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://localhost:8080;
proxy_read_timeout 90;
proxy_redirect http://localhost:8080 https://cms.example.com;
}
}
Reinicie o servidor da web Nginx para que as alterações tenham efeito.
sudo systemctl restart nginx
O aplicativo dotCMS agora está instalado no seu servidor para uso em produção. Acesse o painel administrativo no seguinte endereço.
https://cms.example.com/dotAdmin
Faça login usando a conta de administrador inicial [email protected]
e admin
. Altere a senha padrão imediatamente após o login.
Parabéns, o sistema de gerenciamento de conteúdo dotCMS agora está instalado no seu servidor. Você pode modificar o site de demonstração ou começar a construir seu site a partir do zero.
Usando um sistema diferente? O Fuel CMS é um sistema de gerenciamento de conteúdo baseado em CodeIgniter. Seu código fonte está hospedado no GitHub. Este guia mostra como você pode
Usando um sistema diferente? O Couch CMS é um sistema de gerenciamento de conteúdo (CMS) simples e flexível, gratuito e de código aberto que permite que os web designers
Usando um sistema diferente? O WonderCMS é um CMS de arquivo simples, rápido e pequeno, de código aberto, escrito em PHP. O código fonte do WonderCMS está hospedado no Github. Este guia irá
Usando um sistema diferente? O Redaxscript 3.2 CMS é um sistema de gerenciamento de conteúdo (CMS) moderno e ultra leve, gratuito e de código aberto com foguete-fas
Usando um sistema diferente? Neos é uma plataforma de aplicativos de conteúdo com um CMS e uma estrutura de aplicativos em seu núcleo. Este guia mostra como instalar
Usando um sistema diferente? O Directus 6.4 CMS é um sistema de gerenciamento de conteúdo sem cabeça (CMS) poderoso e flexível, gratuito e de código aberto que fornece
Usando um sistema diferente? Introdução O BoltWire é um sistema de gerenciamento de conteúdo gratuito e leve, escrito em PHP. Comparado com a maioria dos outros gerenciadores de conteúdo
Usando um sistema diferente? O BigTree CMS 4.2 é um sistema de gerenciamento de conteúdo (CMS) de nível empresarial, rápido e leve, gratuito e de código aberto, com uma extensa
Usando um sistema diferente? O Redaxscript 3.2 CMS é um sistema de gerenciamento de conteúdo (CMS) moderno e ultra leve, gratuito e de código aberto com foguete-fas
Bolt é um CMS de código aberto escrito em PHP. O código fonte do Bolts está hospedado no GitHub. Este guia mostra como instalar o Bolt CMS em um novo CentOS 7 Vult
Usando um sistema diferente? Automad é um sistema de gerenciamento de conteúdo (CMS) baseado em arquivo de código aberto e um mecanismo de modelo escrito em PHP. O código-fonte Automad i
Usando um sistema diferente? O Directus 6.4 CMS é um sistema de gerenciamento de conteúdo sem cabeça (CMS) poderoso e flexível, gratuito e de código aberto que fornece
Usando um sistema diferente? O ProcessWire CMS 3.0 é um CMS (Content Management System) simples, flexível e poderoso, de código aberto e gratuito. ProcessWire CMS 3.
Usando um sistema diferente? O Anchor CMS é um mecanismo de blog de sistema de gerenciamento de conteúdo (CMS) super simples e extremamente leve, gratuito e de código aberto que
Usando um sistema diferente? Anchor é um CMS de blog leve e de código aberto, escrito em PHP. O código-fonte Anchors está hospedado no GitHub. Este guia irá mostrar-lhe como
Usando um sistema diferente? Microweber é um software livre de arrastar e soltar CMS e loja online. O código-fonte da Microweber está hospedado no GitHub. Este guia irá mostrar-lhe
Usando um sistema diferente? Fork é um CMS de código aberto escrito em PHP. O código fonte do Forks está hospedado no GitHub. Este guia mostra como instalar o Fork CM
Usando um sistema diferente? O Thelia é uma ferramenta de código aberto para a criação de sites de comércio eletrônico e gerenciamento de conteúdo on-line, escrito em PHP. Código fonte Thelia i
Usando um sistema diferente? O ProcessWire CMS 3.0 é um CMS (Content Management System) simples, flexível e poderoso, de código aberto e gratuito. ProcessWire CMS 3.
Usando um sistema diferente? Introdução O Craft CMS é um CMS de código aberto escrito em PHP. O código-fonte do Craft CMS está hospedado no GitHub. Este guia irá mostrar-lhe
Os ataques de ransomware estão aumentando, mas a IA pode ajudar a lidar com os vírus de computador mais recentes? AI é a resposta? Leia aqui para saber se é AI boone ou bane
ReactOS, um sistema operacional de código aberto e gratuito está aqui com a versão mais recente. Será que ela pode atender às necessidades dos usuários modernos do Windows e derrubar a Microsoft? Vamos descobrir mais sobre esse estilo antigo, mas uma experiência de sistema operacional mais recente.
O Whatsapp finalmente lançou o aplicativo Desktop para usuários de Mac e Windows. Agora você pode acessar o Whatsapp do Windows ou Mac facilmente. Disponível para Windows 8+ e Mac OS 10.9+
Leia isto para saber como a Inteligência Artificial está se tornando popular entre as empresas de pequena escala e como está aumentando as probabilidades de fazê-las crescer e dar vantagem a seus concorrentes.
Recentemente, a Apple lançou o macOS Catalina 10.15.4, uma atualização suplementar para corrigir problemas, mas parece que a atualização está causando mais problemas, levando ao bloqueio de máquinas mac. Leia este artigo para saber mais
13 Ferramentas de Extração de Dados Comerciais de Big Data
Nosso computador armazena todos os dados de uma maneira organizada conhecida como sistema de arquivos Journaling. É um método eficiente que permite ao computador pesquisar e exibir arquivos assim que você clicar em search.https: //wethegeek.com/? P = 94116 & preview = true
À medida que a ciência evolui em um ritmo rápido, assumindo muitos de nossos esforços, os riscos de nos sujeitarmos a uma singularidade inexplicável também aumentam. Leia, o que a singularidade pode significar para nós.
Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1
A IA na área da saúde deu grandes saltos nas últimas décadas. Portanto, o futuro da IA na área da saúde ainda está crescendo dia a dia.