So installieren Sie MODX Revolution auf einem CentOS 7 LAMP VPS
Verwenden Sie ein anderes System? MODX Revolution ist ein schnelles, flexibles, skalierbares, kostenloses und Open-Source-Content-Management-System (CMS) für Unternehmen, das i
Eine übliche Verwendung eines virtuellen Vultr-Servers ist das Hosten von Wordpress-Websites. In diesem Handbuch erfahren Sie, wie Sie die Konfiguration eines virtuellen Servers von Grund auf automatisieren (mithilfe von Ansible) und mehrere unabhängige Wordpress-Websites bereitstellen (mithilfe von Webmin / Virtualmin). Virtualmin / Webmin ist eine grafische Benutzeroberfläche, mit der Sie die Bereitstellung mehrerer virtueller Serverkonten auf demselben Computer verwalten können (einschließlich LAMP / LEMP-Stack). Virtualmin ist cPanel und Plesk sehr ähnlich. In diesem Tutorial verwenden wir die kostenlose GPL-Edition. Nach der Ersteinrichtung des Vultr-Servers und der Installation von Virtualmin können Sie sehr schnell mehrere virtuelle Server über die Virtualmin-Oberfläche einrichten und Wordpress mit seinem eigenen Domänennamen direkt auf diesem virtuellen Server installieren.
In diesem Tutorial verwenden wir stattdessen Ansible, anstatt manuell eine lange Liste von Befehlen einzugeben. Ansible ist ein Python-basiertes Automatisierungstool, mit dem Sie Serveraufgaben zuverlässig und wiederholt automatisieren können. Sobald Sie dieses Tutorial befolgt haben, können Sie mit nur wenigen Befehlen auf die gleiche Weise einen anderen Server bereitstellen.
Installieren Sie Ansible auf Ihrem lokalen Computer oder einem anderen Server.
mkdir ansible
cd ansible
virtualenv env
source env/bin/activate
pip install ansible
Ansible meldet sich über SSH bei Ihrem Server an. Der SSH-Zugriff ist am sichersten, wenn wir Schlüssel anstelle eines Passworts verwenden. Lassen Sie uns zunächst ein öffentliches und ein privates Schlüsselpaar generieren.
mkdir ssh_keys
ssh-keygen -t rsa -b 2048 -f ./ssh_keys
Im ssh_keys
Verzeichnis befinden sich nun zwei Dateien ssh_keys
und ssh_keys.pub
. ssh_keys
ist Ihre private Schlüsseldatei und sollte sicher aufbewahrt werden. Sie können jetzt das öffnen ssh_keys.pub
, das den öffentlichen Schlüssel enthält.
Melden Sie sich beim Vultr-Web-Dashboard an und klicken Sie auf Deploy New Server
.
Wählen Sie eine Region, einen Servertyp (Ubuntu 16.04) und eine Servergröße aus und SSH keys
klicken Sie dann in Teil 6 ( ) auf Add New
. Fügen Sie auf der nächsten Seite Ihren öffentlichen Schlüssel ein, geben Sie ihm einen Namen und klicken Sie auf Add SSH key
. Stellen Sie schließlich sicher, dass der Schlüssel ausgewählt ist, und klicken Sie auf Deploy now
.
Sobald die Bereitstellung des Servers abgeschlossen ist, wird seine IP-Adresse angezeigt. Sie müssen sich beim DNS-Server Ihres Domainnamens anmelden und auf diese Adresse verweisen.
Die Automatisierungsdateien von Ansible werden aufgerufen roles
. Wir richten zuerst die Verzeichnisstruktur (innerhalb des ansible
Verzeichnisses, das Sie gerade in Schritt 1 erstellt haben) und die Basisdateien ein.
mkdir -p group_vars roles/common/tasks/ roles/common/handlers
touch hosts group_vars/all deploy.yml roles/common/handlers/main.yml
Bearbeiten Sie die hosts
Datei so, dass sie Folgendes enthält, und ersetzen ip address
Sie den soeben erstellten Server durch den. Ansible verwendet Python 2, das Ubuntu 16.04 standardmäßig nicht installiert hat. In der hosts
Datei weisen wir Ansible an, Python 3 zu verwenden.
[common]
192.0.2.1 ansible_python_interpreter=/usr/bin/python3
Bearbeiten Sie die deploy.yml
Datei so, dass sie Folgendes enthält. Wir werden den root
Benutzer verwenden.
- name: apply common configuration to server
hosts: all
user: root
roles:
- common
Bearbeiten Sie die /group_vars/all
Datei so, dass sie Folgendes enthält. Diese Variablen teilen Ansible den Speicherort Ihrer SSH-Schlüssel, die Auslagerungsdateiparameter, Ihren vollqualifizierten Domänennamen und das Root-Passwort mit. Bitte denken Sie daran nicht die Datei in Quellcodeverwaltung zu schließen , wie es Ihr Passwort im Klartext enthält.
ssh_dir: ./ssh_keys
swap_file_path: /swapfile
swap_file_size: 1G
swappiness: 1
hostname: example.com
new_password: YOUR_PASSWORD_HERE
Bearbeiten Sie die common/handlers/main.yml
Datei so, dass sie Folgendes enthält.
- name: restart sshd
service: name=ssh state=restarted
Ansible Automatisierung ist leichter zu verstehen, wenn wir sie in Aufgaben aufteilen. Lassen Sie uns dabei Dateien für jede unserer Aufgaben erstellen.
cd roles/common/tasks
touch hosts main.yml setup.yml users.yml ufw.yml swap.yml virtualmin.yml
main.yml
sollte auf jede Datei verweisen, die die Ansible-Befehle enthält. Bearbeiten Sie sie daher so, dass sie Folgendes enthält.
- include: setup.yml
- include: users.yml
- include: ufw.yml
- include: swap.yml
- include: virtualmin.yml
Der erste Schritt beim Einrichten eines neuen Servers besteht darin, den Repo-Cache zu aktualisieren und die Zeitzone festzulegen. Bearbeiten Sie die common/handlers/setup.yml
Datei so, dass sie Folgendes enthält.
- apt: update_cache=yes
sudo: yes
- name: set timezone to Europe/London
timezone:
name: Europe/London
Jetzt geben wir dem Root-Benutzer ein Kennwort (das wir für den Zugriff auf die virtualmin-Weboberfläche benötigen), deaktivieren jedoch die Kennwortanmeldungen über SSH (da wir die Authentifizierungsmethode mit sichereren Schlüsseln verwenden). Bearbeiten users.yml
, um Folgendes zu enthalten.
- name: Change passwd
user: name=root password={{ new_password | password_hash('sha512') }} update_password=always
- name: Disable SSH password login
lineinfile: dest=/etc/ssh/sshd_config regexp="^#?PasswordAuthentication" line="PasswordAuthentication no"
notify: restart sshd
Aus Sicherheitsgründen benötigen wir eine Firewall. Wir werden die unkomplizierte Firewall verwenden, um SSH-Zugriff auf Port 22
, Webzugriff auf Port 80
und sicheren Webzugriff auf Port zu ermöglichen 443
. Bearbeiten Sie die ufw.yml
Datei so, dass sie Folgendes enthält.
- name: Set default firewall policy to deny all
become: True
ufw: state=enabled direction=incoming policy=deny
tags: firewall
- name: enable SSH in firewall
ufw: rule=allow port=22
sudo: yes
- name: enable HTTP connections for web server
ufw: rule=allow port=80
sudo: yes
- name: enable HTTPS connections for web server
ufw: rule=allow port=443
sudo: yes
- name: enable firewall
ufw: state=enabled
sudo: yes
Optional können Sie eine Auslagerungsdatei einfügen. Dies ist wichtig, wenn Ihr Server weniger als 2 GB RAM hat, um Abstürze aufgrund von Speichermangel zu vermeiden. Bearbeiten swap.yml
, um Folgendes zu enthalten.
- name: Set swap_file variable
set_fact:
swap_file: "{{swap_file_path}}"
tags:
- swap.set.file.path
- name: Check if swap file exists
stat:
path: "{{swap_file}}"
register: swap_file_check
tags:
- swap.file.check
- name: Create swap file
command: fallocate -l {{swap_file_size}} {{swap_file}}
when: not swap_file_check.stat.exists
tags:
- swap.file.create
- name: Change swap file permissions
file: path="{{swap_file}}"
owner=root
group=root
mode=0600
tags:
- swap.file.permissions
- name: Format swap file
sudo: yes
command: "mkswap {{swap_file}}"
when: not swap_file_check.stat.exists
tags:
- swap.file.mkswap
- name: Write swap entry in fstab
mount: name=none
src={{swap_file}}
fstype=swap
opts=sw
passno=0
dump=0
state=present
tags:
- swap.fstab
- name: Turn on swap
sudo: yes
command: swapon -a
when: not swap_file_check.stat.exists
tags:
- swap.turn.on
- name: Set swappiness
sudo: yes
sysctl:
name: vm.swappiness
value: "{{swappiness}}"
tags:
- swap.set.swappiness
Virtualmin verfügt über eine eigene Installationsdatei, die von Ansible heruntergeladen und ausgeführt werden kann. Hier verwenden wir die minimale Installation ( LINK
). Die zusätzlichen Elemente dienen zum Konfigurieren des MySQL-Serverkennworts, das bei der Installation durch Virtualmin nicht festgelegt wird. Wir müssen MySQL vorübergehend stoppen und das Authentifizierungsverzeichnis hinzufügen, bevor wir das Kennwort ändern. Bearbeiten virtualmin.yml
, um Folgendes zu enthalten.
- name: download virtualmin install script
get_url: >
url=http://software.virtualmin.com/gpl/scripts/install.sh
dest=/root/install.sh
mode=0755
- name: virtualmin install (takes around 10 mins) you can see progress using $ sudo tail -f /root/virtualmin-install.log
tags: non-idem
shell: ~/install.sh --force --hostname {{ hostname }} --minimal --yes
args:
chdir: /root
- name: temp stop mysql
service:
name: mysql
state: stopped
- name: change owner (and group) of mysqld dir
file:
path: "/var/run/mysqld"
state: directory
owner: mysql
group: mysql
- name: virtualmin set mysql password
shell: virtualmin set-mysql-pass --user root --pass {{ new_password }}
- name: restart mysql
service:
name: mysql
state: started
Die Ansible-Rolle ist jetzt beendet und wir können sie bereitstellen.
Im Ordner ansible können wir jetzt einfach den folgenden Befehl ausführen, und Ansible führt alle von uns automatisch erstellten Aufgaben aus. Wenn Sie zum ersten Mal eine Verbindung herstellen, wird eine SSH-Schlüsselwarnung yes
angezeigt. Geben Sie einfach " " an der Eingabeaufforderung ein.
ansible-playbook deploy.yml --private-key=ssh_keys/ssh_keys -i hosts
Wenn Sie einen anderen Server verwenden möchten, können Sie einfach die IP-Adresse in der Hosts-Datei ändern und diesen Befehl erneut ausführen, um genau das gleiche Setup durchzuführen.
Die Installation ist abgeschlossen und wir können jetzt zu gehen https://192.0.2.1:10000
(verwenden Sie die IP-Adresse Ihres Servers). Ihr Browser gibt eine Sicherheitswarnung aus, da das Zertifikat selbst signiert ist. Klicken Sie also auf advanced
und fügen Sie eine Ausnahme hinzu. Sie erhalten eine Anmeldeseite. Der Benutzername lautet root
und das Kennwort ist das, das Sie group_vars/all
in Schritt 3 in die Datei eingegeben haben. Wenn Sie Virtualmin zum ersten Mal eingeben, wird der Assistent nach der Installation angezeigt. Sie können diese Einstellungen entweder manuell durchgehen oder auf klicken cancel
, um die Standardeinstellungen zu übernehmen.
Klicken Sie im Virtualmin-Dashboard auf, um Ihren ersten Wordpress-Server zum Laufen zu bringen Create Virtual Server
. Sie müssen einen Domainnamen, eine Beschreibung und ein Administratorkennwort eingeben. Der Domänenname sollte sich vom vollständig qualifizierten Virtualmin-Domänennamen unterscheiden, und Sie müssen den DNS-Eintrag auf die IP-Adresse Ihres Servers verweisen.
Klicken Sie auf Create Server
. Wenn Virtualmin die Erstellung Ihres Servers abgeschlossen hat, klicken Sie Install Scripts
auf das Menü auf der linken Seite. Wählen Sie Wordpress
, klicken Sie Show install options
und wählen Sie auf der folgenden Seite den Speicherort der Wordpress-Installation. Einfach auswählen At top level
und klicken Install Now
.
Das ist alles, was Sie tun müssen - Sie können die Wordpress-Installation abschließen, indem Sie Ihren http://example.net/wp-admin/install.php
(wo example.net
befindet sich dieser Domainname des virtuellen Servers) besuchen . Wenn Ihre DNS-Einträge noch nicht weitergegeben wurden, können Sie über Services > Preview Website
das Virtualmin-Menü aufrufen.
Sie können diesen Schritt mehrmals wiederholen, um mehrere Wordpress-Sites auf demselben Vultr-Server zu erstellen.
Verwenden Sie ein anderes System? MODX Revolution ist ein schnelles, flexibles, skalierbares, kostenloses und Open-Source-Content-Management-System (CMS) für Unternehmen, das i
Verwenden Sie ein anderes System? Ghost ist eine Open-Source-Blogging-Plattform, die seit 201 bei Entwicklern und normalen Benutzern immer beliebter wird
Verwenden Sie ein anderes System? MODX Revolution ist ein schnelles, flexibles, skalierbares, kostenloses und Open-Source-Content-Management-System (CMS) für Unternehmen, das i
Verwenden Sie ein anderes System? Ghost ist eine Open-Source-Blogging-Plattform, die seit ihrer Veröffentlichung im Jahr 2013 bei Entwicklern und normalen Benutzern immer beliebter wird. ich
Verwenden Sie ein anderes System? Ghost ist eine Open-Source-Blogging-Plattform, die seit 201 bei Entwicklern und normalen Benutzern immer beliebter wird
Vultr-Instanzen sind eine großartige Möglichkeit, Ihr WordPress-Blog auszuführen. Eine bemerkenswertere Erweiterung von WordPress ist jedoch WooCommerce, ein E-Commerce-Plugin, das th erweitert
Ghost ist der neueste und beste Emporkömmling, der es mit WordPress aufnehmen kann. Die Theme-Entwicklung ist schnell und einfach zu erlernen, da die Ghost-Entwickler beschlossen haben, beide zu verwenden
Einführung Je näher Sie Ihre OpenBSD-Installation an der Standardeinstellung und ohne so viele hinzugefügte Pakete halten, desto sicherer ist sie. Während die mehr Commo
Einführung WordPress ist das dominierende Content-Management-System im Internet. Es unterstützt alles von Blogs bis hin zu komplexen Websites mit dynamischen Inhalten
Ghost ist eine moderne Open-Source-Publishing-Plattform, die auf Node.js mit einem Ember.js-Admin-Client, einer JSON-API und einer von Handlebars.js unterstützten Design-API basiert. Ghos
Verwenden Sie ein anderes System? Ghost ist eine Open-Source-Blogging-Plattform, die seit 201 bei Entwicklern und normalen Benutzern immer beliebter wird
Verwenden Sie ein anderes System? MODX Revolution ist ein schnelles, flexibles, skalierbares, kostenloses und Open-Source-Content-Management-System (CMS) für Unternehmen, das i
Verwenden Sie ein anderes System? Dotclear ist eine sehr einfache Blogging-Engine. Es ist Open Source und einfach zu bedienen. Dieses Tutorial wird die Installation am durchlaufen
Verwenden Sie ein anderes System? MODX Revolution ist ein schnelles, flexibles, skalierbares, kostenloses und Open-Source-Content-Management-System (CMS) für Unternehmen, das i
Verwenden Sie ein anderes System? Ghost ist eine Open-Source-Blogging-Plattform, die seit 201 bei Entwicklern und normalen Benutzern immer beliebter wird
Verwenden Sie ein anderes System? Fork ist ein Open-Source-CMS, das in PHP geschrieben wurde. Der Forks-Quellcode wird auf GitHub gehostet. Diese Anleitung zeigt Ihnen, wie Sie Fork CM installieren
Verwenden Sie ein anderes System? Dotclear ist eine sehr einfache Blog-Engine, die auf PHP basiert. In diesem Tutorial werden wir Dotclear unter Ubunt installieren
Verwenden Sie ein anderes System? Fork ist ein Open-Source-CMS, das in PHP geschrieben wurde. Der Forks-Quellcode wird auf GitHub gehostet. Diese Anleitung zeigt Ihnen, wie Sie Fork CM installieren
Verwenden Sie ein anderes System? Ghost ist eine Open-Source-Blogging-Plattform, die seit ihrer Veröffentlichung im Jahr 2013 bei Entwicklern und normalen Benutzern immer beliebter wird. ich
Ransomware-Angriffe nehmen zu, aber kann KI helfen, den neuesten Computervirus zu bekämpfen? Ist KI die Antwort? Lesen Sie hier, ob KI boone oder bane ist
ReactOS, ein quelloffenes und kostenloses Betriebssystem, ist hier mit der neuesten Version. Kann es den Anforderungen moderner Windows-Benutzer genügen und Microsoft zu Fall bringen? Lassen Sie uns mehr über dieses alte, aber neuere Betriebssystem erfahren.
Whatsapp hat endlich die Desktop-App für Mac- und Windows-Benutzer auf den Markt gebracht. Jetzt können Sie ganz einfach von Windows oder Mac auf WhatsApp zugreifen. Verfügbar für Windows 8+ und Mac OS 10.9+
Lesen Sie dies, um zu erfahren, wie Künstliche Intelligenz bei kleinen Unternehmen beliebt wird und wie sie die Wahrscheinlichkeit erhöht, sie wachsen zu lassen und ihren Konkurrenten einen Vorsprung zu verschaffen.
Vor kurzem hat Apple macOS Catalina 10.15.4 als Ergänzungsupdate veröffentlicht, um Probleme zu beheben, aber es scheint, dass das Update mehr Probleme verursacht, die zum Bricking von Mac-Computern führen. Lesen Sie diesen Artikel, um mehr zu erfahren
13 Tools zur kommerziellen Datenextraktion von Big Data
Unser Computer speichert alle Daten in einer organisierten Weise, die als Journaling-Dateisystem bekannt ist. Es ist eine effiziente Methode, die es dem Computer ermöglicht, Dateien zu suchen und anzuzeigen, sobald Sie auf die Suche klicken.https://wethegeek.com/?p=94116&preview=true
Da sich die Wissenschaft schnell weiterentwickelt und einen Großteil unserer Bemühungen übernimmt, steigt auch das Risiko, uns einer unerklärlichen Singularität auszusetzen. Lesen Sie, was Singularität für uns bedeuten könnte.
Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1
KI im Gesundheitswesen hat in den letzten Jahrzehnten große Fortschritte gemacht. Somit wächst die Zukunft der KI im Gesundheitswesen immer noch von Tag zu Tag.