Ubuntu 16.04 Üzerinde dotCMS Kurulumu

DotCMS, Java ile yazılmış açık kaynaklı, kurumsal düzeyde bir içerik yönetim sistemidir. İşletmeniz için bir web sitesi oluşturmak için gereken hemen hemen her özelliği içerir. CRM, mobil uygulamalar ve daha fazlası gibi diğer hizmetlerle entegre olmak için RESTful API sağlar. İçeriğin gerçek zamanlı indekslenmesi için Elasticsearch'ü ve çok katmanlı bir önbellek uygulamak için Redis'i kullanır.

Ön şartlar

  • Bir Vultr Ubuntu 16.04 sunucu örneği.
  • Bir sudo kullanıcısı .
  • Bir alan adı sunucuya işaret etti.

Bu eğitimde, 192.168.0.1 genel IP adresi ve cms.example.com Vultr örneğine işaret eden alan adı olarak kullanacağız. Lütfen örnek alan adının ve genel IP adresinin tüm tekrarlarını gerçek adla değiştirdiğinizden emin olun.

Ubuntu 16.04 Güncelleme kılavuzunu kullanarak temel sisteminizi güncelleyin . Sisteminiz güncellendiğinde, Java'yı yüklemeye devam edin.

Java'yı yükleyin

Oracle Java 8 için Ubuntu deposunu ekleyin.

sudo add-apt-repository --yes ppa:webupd8team/java
sudo apt update

Java'yı yükleyin.

sudo apt -y install oracle-java8-installer

Java'nın sürümünü doğrulayabilirsiniz.

java -version

Aşağıdaki çıktıyı göreceksiniz.

user@vultr:~$ java -version
java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)

Aşağıdaki paketi yükleyerek Java için varsayılan yolu ayarlayın.

sudo apt -y install oracle-java8-set-default

Ayarlandığını doğrulayabilirsiniz JAVA_HOME.

echo $JAVA_HOME

Aşağıdakileri görmelisiniz.

user@vultr:~$ echo $JAVA_HOME
/usr/lib/jvm/java-8-oracle

Hiç çıktı görmüyorsanız, geçerli kabuktan çıkış yapmanız ve tekrar oturum açmanız gerekir.

PostgreSQL'i yükleyin

Varsayılan olarak, dotCMS, H2 veritabanı motorunu kullanacak şekilde yapılandırılmıştır. H2 veritabanı motoru düz dosya tabanlı bir veritabanı motorudur. Üretimde kullanılması önerilmez. Bu öğreticide, dotCMS veritabanını depolamak için PostgreSQL sunucusunu kullanacağız.

PostgreSQL, kararlılığı ve hızı ile bilinen bir nesne-ilişkisel veritabanı sistemidir. Varsayılan Ubuntu deposu PostgreSQL'in eski bir sürümünü içerir, bu nedenle PostgreSQL deposunu ekleyin.

echo "deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main" | sudo tee /etc/apt/sources.list.d/pgdg.list
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt update

PostgreSQL veritabanı sunucusunu kurun.

sudo apt -y install postgresql

PostgreSQL sunucusunu başlatın ve önyükleme zamanında otomatik olarak başlamasını sağlayın.

sudo systemctl start postgresql
sudo systemctl enable postgresql

Varsayılan PostgreSQL kullanıcısının parolasını değiştirin.

sudo passwd postgres

PostgreSQL kullanıcısı olarak oturum açın.

sudo su - postgres

DotCMS için yeni bir PostgreSQL kullanıcısı oluşturun.

createuser dotcms 

PostgreSQL psql , veritabanını sorguları çalıştırmak için kabuk sağlar . PostgreSQL kabuğuna geçin.

psql

DotCMS veritabanı için yeni oluşturulan kullanıcı için bir parola belirleyin.

ALTER USER dotcms WITH ENCRYPTED password 'DBPassword';

Veritabanı kullanıcı parolasını DBPassword güvenli bir parola ile değiştirin .

DotCMS kurulumu için yeni bir veritabanı oluşturun.

CREATE DATABASE dotcms OWNER dotcms;

Kabuktan çıkın psql .

\q

sudo Kullanıcıya geçin .

exit

DotCMS'yi yükle

DotCMS arşivini indirin.

wget https://dotcms.com/physical_downloads/release_builds/dotcms_4.3.2.tar.gz

Uygulamanın en son sürümüne olan bağlantıyı her zaman dotCMS indirme sayfasında bulabilirsiniz .

DotCMS dosyalarını saklamak için yeni bir dizin oluşturun ve bu dizine çıkartın.

sudo mkdir /opt/dotcms
sudo tar -zxf dotcms*.tar.gz -C /opt/dotcms

Veritabanı yapılandırma dosyasını açın.

cd /opt/dotcms
sudo nano dotserver/tomcat-*/webapps/ROOT/META-INF/context.xml

H2 Bloğu bulun .

<!-- H2 -->
<Resource name="jdbc/dotCMSPool" auth="Container"
 ...

 validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />

Yorum H2 sınırlayıcıyı --> bölümün başından bölümün sonuna taşıyarak bölümün tamamını yorumlayın. Aşağıdaki gibi görünmelidir.

<!-- H2
<Resource name="jdbc/dotCMSPool" auth="Container"
 ...

 validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
-->

Yorum sınırlayıcıyı --> bölümün sonundan kaldırarak ve üst sargıya yerleştirerek PostgreSQL bölümünü açın POSTGRESQL. Ayrıca, bulmak username= ve password= ve PostgreSQL veritabanı kullanıcı adı ve şifre ile mevcut değerleri değiştirin. Başka bir veritabanı adı kullandıysanız dotcms, içindeki veritabanı adını değiştirmeniz gerekir url=. Yapılandırıldıktan sonra, dosyadaki PostgreSQL bloğu aşağıdaki gibi görünecektir.

<!-- 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" />

Tüm yürütülebilir dosyalar için yürütme izni sağlayın.

sudo chmod 755 ./bin/*.sh
sudo chmod 755 dotserver/tomcat-*/bin/*.sh

DotCMS artık sunucunuza yüklenmiştir. Uygulamayı hemen çalıştırmak için aşağıdakileri yürütün.

cd /opt/dotcms
sudo bin/startup.sh

Sunucu başarıyla başlatıldığında aşağıdaki çıktıyı göreceksiniz.

user@vultr:/opt/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:        /usr
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.

Yukarıdaki komut, uygulamayı bağlantı noktasında sunmak için Tomcat web sunucusunu başlatır 8080.

Favori tarayıcınızı açın ve adresine göz atın http://192.168.0.1:8080. Uygulamanın bir demo web sitesi çalıştırdığını göreceksiniz. Web sitenizi görmüyorsanız, dotCMS sunucusunun ilk açılışının PostgreSQL veritabanına veri yazması ve önbelleği oluşturması beş ila on dakika sürdüğünü lütfen bekleyin. Başlangıç ​​günlüklerini de kontrol edebilirsiniz.

tail -n 1000 -f /opt/dotcms/dotserver/tomcat-*/webapps/ROOT/dotsecure/logs/dotcms.log

Systemd'yi Yapılandır

DotCMS sunucusu, yükleyici paketinde sağlanan başlangıç ​​komut dosyası kullanılarak doğrudan başlatılabilir. Kolaylık olması açısından, dotCMS sunucusu için bir Systemd birim dosyası ayarlamanız gerekir. Bu, uygulama sunucusunun sistem yeniden başlatılırken ve arızalarda otomatik olarak başlatılmasını sağlar.

Kapatma komut dosyasını kullanarak çalışan dotCMS sunucusunu durdurun.

sudo bin/shutdown.sh

Güvenlik nedeniyle dotCMS sunucusunu çalıştırmak için ayrıcalıksız bir kullanıcı oluşturun.

sudo adduser --home /opt/dotcms -gecos "dotCMS User" --disabled-password --disabled-login dotcms

DotCMS kullanıcısına dosyaların sahipliğini sağlayın.

sudo chown -R dotcms:dotcms /opt/dotcms

Yeni bir Systemd hizmeti oluşturun.

sudo nano /etc/systemd/system/dotcms.service

Dosyayı doldurun.

[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

Uygulamayı başlatın ve önyükleme zamanında otomatik olarak başlamasını sağlayın.

sudo systemctl start dotcms
sudo systemctl enable dotcms

Hizmetin çalıştığından emin olun.

sudo systemctl status dotcms

Ters Proxy'yi Yapılandırma

Varsayılan olarak, dotCMS sunucusu bağlantı noktasını dinler 8080. Uygulamaya standart HTTP ve HTTPS bağlantı noktaları üzerinden erişilebilmesi için Nginx'i ters proxy olarak yapılandıracağız . Ayrıca Nginx'i Let's Encrypt ile oluşturulan SSL'yi kullanacak şekilde de yapılandıracağız.

Nginx'i yükleyin.

sudo apt -y install nginx

Nginx'i başlatın ve önyükleme zamanında otomatik olarak başlamasını sağlayın.

sudo systemctl start nginx
sudo systemctl enable nginx

Certbot deposunu ekleyin.

sudo add-apt-repository --yes ppa:certbot/certbot
sudo apt-get update

Let's Encrypt CA'nın istemci uygulaması olan Certbot'u yükleyin.

sudo apt -y install certbot

Not: Let's Encrypt CA'dan sertifika almak için, sertifikaların oluşturulacağı etki alanı sunucuya yönlendirilmelidir. Değilse, etki alanının DNS kayıtlarında gerekli değişiklikleri yapın ve sertifika isteğini yeniden yapmadan önce DNS'nin yayılmasını bekleyin. Certbot, sertifikaları vermeden önce etki alanı yetkilisini denetler.

SSL sertifikaları oluşturun.

sudo certbot certonly --webroot -w /var/www/html -d cms.example.com

Oluşturulan sertifikaların depolanması muhtemeldir /etc/letsencrypt/live/cms.example.com/. Sertifikaların şifrelenmesini 90 gün içinde sona erdirelim, bu nedenle Cron işlerini kullanarak sertifikaların otomatik olarak yenilenmesi önerilir.

Cron iş dosyasını açın.

sudo crontab -e

Dosyanın sonuna aşağıdaki satırı ekleyin.

30 5 * * * /usr/bin/certbot renew --quiet

Yukarıdaki cron işi her gün 05: 30'da çalışacaktır. Sertifikanın geçerlilik süresi dolmuşsa, otomatik olarak yenilenir.

DotCMS sitesi için yeni bir sunucu blok dosyası oluşturun.

sudo nano /etc/nginx/sites-available/dotcms

Dosyayı doldurun.

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;
    }
  }

Yapılandırmayı etkinleştirin.

sudo ln -s /etc/nginx/sites-available/dotcms /etc/nginx/sites-enabled/dotcms

Değişikliklerin etkili olabilmesi için Nginx web sunucusunu yeniden başlatın.

sudo systemctl restart nginx

DotCMS uygulaması artık üretim kullanımı için sunucunuza yüklenmiştir. Aşağıdaki adresten yönetim panosuna erişin.

https://cms.example.com/dotAdmin

İlk yönetici hesabını admin@dotcms.com ve parolayı kullanarak oturum açın admin. Giriş yaptıktan hemen sonra varsayılan şifreyi değiştirin.

Tebrikler, dotCMS içerik yönetim sistemi artık sunucunuza yüklenmiştir. Demo sitesini değiştirebilir veya sitenizi sıfırdan oluşturmaya başlayabilirsiniz.

Yorum bırak

CentOS 7de LibreNMS Kullanarak Cihazlarınızı İzleyin

CentOS 7de LibreNMS Kullanarak Cihazlarınızı İzleyin

CentOS 7 üzerinde LibreNMS kullanarak ağ cihazlarınızı etkili bir şekilde izleyin. Ağ izleme için gerekli adımları ve yapılandırmaları öğrenin.

Counter-Strike: Global Offensive Server Nasıl Kurulur?

Counter-Strike: Global Offensive Server Nasıl Kurulur?

Counter-Strike: Global Offensive sunucusu kurmak için gerekli adımlar. Gerekli araçlar ve yükleme süreci hakkında bilgi.

Ubuntu 16.04 LTS Üzerinde OpenNMS Kurulumu

Ubuntu 16.04 LTS Üzerinde OpenNMS Kurulumu

OpenNMS, çok sayıda cihazı izlemek ve yönetmek için kullanılabilen bir açık kaynak ağ yönetim platformudur. Ubuntu 16.04 LTS üzerinde OpenNMS kurulumu için tüm adımları keşfedin.

Ubuntu 16.04te LibreNMS Kullanarak Cihazlarınızı İzleyin

Ubuntu 16.04te LibreNMS Kullanarak Cihazlarınızı İzleyin

Farklı Bir Sistem mi Kullanıyorsunuz? LibreNMS tam özellikli bir açık kaynak ağ izleme sistemidir.

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Mimarisindeki farklı katmanları ve işlevlerini en basit şekilde öğrenmek için blogu okuyun.

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Birçoğunuz Switch'in Mart 2017'de çıkacağını ve yeni özelliklerini biliyorsunuz. Bilmeyenler için, 'Switch'i 'olmazsa olmaz bir gadget' yapan özelliklerin bir listesini hazırladık.

Hala Teslim Edilmeyen Teknoloji Sözleri

Hala Teslim Edilmeyen Teknoloji Sözleri

Teknoloji devlerinin sözlerini yerine getirmesini mi bekliyorsunuz? teslim edilmeyenleri kontrol edin.

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zekanın küçük ölçekli şirketler arasında nasıl popüler hale geldiğini ve onları büyütme ve rakiplerine üstünlük sağlama olasılıklarını nasıl artırdığını öğrenmek için bunu okuyun.

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Bilim hızla gelişip birçok çabamızı üstlendikçe, kendimizi açıklanamaz bir Tekilliğe maruz bırakmanın riskleri de artıyor. Okuyun, tekillik bizim için ne anlama gelebilir.