OpenBSD 6.2にWordPressをインストールする
はじめにWordPressは、インターネット上の主要なコンテンツ管理システムです。ブログから動的コンテンツを備えた複雑なWebサイトまで、あらゆるものを強化します
Vultr仮想サーバーの一般的な使用法は、Wordpress Webサイトをホストすることです。このガイドでは、仮想サーバーの構成を最初から自動化し(Ansibleを使用)、複数の独立したWordpress Webサイトを展開する方法(Webmin / Virtualminを使用)について説明します。Virtualmin / Webminは、同じマシン上での複数の仮想サーバーアカウントの展開を管理できるグラフィカルユーザーインターフェイスです(LAMP / LEMPスタックを完備)。VirtualminはcPanelとPleskに非常に似ており、このチュートリアルでは無料のGPLエディションを使用します。Vultrサーバーの初期セットアップとVirtualminのインストール後、Virtualminインターフェイス内から複数の仮想サーバーを非常に迅速にセットアップし、独自のドメイン名を使用してWordpressをその仮想サーバーに直接インストールできます。
このチュートリアルでは、コマンドの長いリストを手動で入力する代わりに、Ansibleを使用します。Ansibleは、サーバータスクを確実かつ繰り返し自動化できるpythonベースの自動化ツールです。つまり、このチュートリアルを実行すると、いくつかのコマンドを使用するだけで、同じ方法で別のサーバーをデプロイできるようになります。
ローカルマシンまたは別のサーバーにAnsibleをインストールします。
mkdir ansible
cd ansible
virtualenv env
source env/bin/activate
pip install ansible
Ansibleは、SSH経由でサーバーにログインすることで機能します。SSHアクセスは、パスワードではなくキーを使用する場合に最も安全です。まず、公開鍵と秘密鍵のペアを生成しましょう。
mkdir ssh_keys
ssh-keygen -t rsa -b 2048 -f ./ssh_keys
ではssh_keys
、ディレクトリ今は二つのファイルも、だろうssh_keys
とssh_keys.pub
。ssh_keys
は秘密鍵ファイルであり、安全に保管する必要があります。ssh_keys.pub
これで、公開鍵を含むを開くことができます。
Vultr Webダッシュボードにログインし、をクリックしますDeploy New Server
。
地域、サーバーの種類(Ubuntu 16.04)、サーバーのサイズを選択し、パート6(SSH keys
)でをクリックしますAdd New
。次のページで、公開鍵を貼り付けて名前を付け、[]をクリックしますAdd SSH key
。最後に、キーが選択されていることを確認して、をクリックしますDeploy now
。
サーバーのデプロイが完了すると、そのIPアドレスが表示されます。ドメイン名のDNSサーバーにログインして、このアドレスを指定する必要があります。
Ansibleのオートメーションファイルはと呼ばれroles
ます。最初に、ディレクトリ構造(ansible
手順1で作成したディレクトリ内)と基本ファイルをセットアップします。
mkdir -p group_vars roles/common/tasks/ roles/common/handlers
touch hosts group_vars/all deploy.yml roles/common/handlers/main.yml
hosts
ファイルを編集して次の内容を含め、ip address
作成したサーバーの代わりにを使用します。Ansibleでは、Ubuntu 16.04にデフォルトでインストールされていないpython 2を使用しています。hosts
ファイルでは、Python 3を使用するようにAnsibleに指示しています。
[common]
192.0.2.1 ansible_python_interpreter=/usr/bin/python3
deploy.yml
ファイルを編集して、以下を含めます。root
ユーザーを使用します。
- name: apply common configuration to server
hosts: all
user: root
roles:
- common
/group_vars/all
ファイルを編集して、以下を含めます。これらの変数は、SSHキーの場所、スワップファイルのパラメーター、完全修飾ドメイン名、ルートパスワードをAnsibleに通知します。ファイルにはパスワードがクリアテキストで含まれているため、ファイルをソース管理に含めないでください。
ssh_dir: ./ssh_keys
swap_file_path: /swapfile
swap_file_size: 1G
swappiness: 1
hostname: example.com
new_password: YOUR_PASSWORD_HERE
common/handlers/main.yml
ファイルを編集して、以下を含めます。
- name: restart sshd
service: name=ssh state=restarted
Ansible自動化をタスクに分解すると、理解が容易になります。プロセスの各タスクのファイルを作成しましょう。
cd roles/common/tasks
touch hosts main.yml setup.yml users.yml ufw.yml swap.yml virtualmin.yml
main.yml
は、Ansibleコマンドを含む各ファイルを指す必要があるため、以下を含むように編集します。
- include: setup.yml
- include: users.yml
- include: ufw.yml
- include: swap.yml
- include: virtualmin.yml
新しいサーバーを設定する最初のステップは、リポジトリキャッシュを更新してタイムゾーンを設定することです。common/handlers/setup.yml
ファイルを編集して、以下を含めます。
- apt: update_cache=yes
sudo: yes
- name: set timezone to Europe/London
timezone:
name: Europe/London
ここで、rootユーザーにパスワード(virtualmin Webインターフェースにアクセスする必要があります)を指定しますが、SSHを介したパスワードログインを無効にします(より安全なキー認証方式を使用しているため)。users.yml
以下を含むように編集します。
- 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
セキュリティのために、ファイアウォールが必要です。複雑でないファイアウォールを使用して、ポート22
でのSSHアクセス、ポートでのWebアクセス、ポート80
での安全なWebアクセスを許可します443
。ufw.yml
ファイルを編集して、以下を含めます。
- 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
オプションで、スワップファイルを含めることができます。これは、メモリ不足によるクラッシュを回避するために、サーバーのRAMが2GB未満の場合に不可欠です。swap.yml
以下を含むように編集します。
- 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には、Ansibleでダウンロードして実行できる独自のインストーラーファイルがあります。ここでは、最小インストール(LINK
)を使用しています。追加の項目は、Virtualminによるインストール時に設定されないMySQLサーバーのパスワードを設定することです。パスワードを変更する前に、MySQLを一時的に停止して認証ディレクトリを追加する必要があります。virtualmin.yml
以下を含むように編集します。
- 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
Ansibleロールが完了し、デプロイする準備が整いました。
ansibleフォルダーから、次のコマンドを実行するだけで、Ansibleが自動的に作成したすべてのタスクを実行します。初めて接続すると、SSHキーの警告が表示さyes
れます。プロンプトに「」と入力するだけです。
ansible-playbook deploy.yml --private-key=ssh_keys/ssh_keys -i hosts
別のサーバーを使用したい場合は、hostsファイルのIPアドレスを変更し、そのコマンドを再度実行して、まったく同じ設定を完了することができます。
インストールが完了し、https://192.0.2.1:10000
(サーバーのIPアドレスを使用して)移動できるようになりました。証明書は自己署名されているため、ブラウザーはセキュリティ警告を発行するので、をクリックadvanced
して例外を追加します。ログインページが表示されます。ユーザー名はroot
で、パスワードはgroup_vars/all
手順3でファイルに入力したものです。Virtualminを初めて入力すると、インストール後のウィザードが表示されます。これらの設定を手動で実行するか、クリックcancel
してデフォルトを受け入れることができます。
最初のWordpressサーバーを起動して実行するには、Virtualminダッシュ��ードでをクリックしますCreate Virtual Server
。ドメイン名、説明、管理者パスワードを入力する必要があります。ドメイン名はVirtualminの完全修飾ドメイン名とは異なる必要があり、DNSレコードがサーバーのIPアドレスを指すようにする必要があります。
をクリックしCreate Server
ます。Virtualminがサーバーの作成を完了したらInstall Scripts
、左側のメニューをクリックします。を選択してWordpress
をクリックShow install options
し、次のページでWordpressのインストール場所を選択します。を選択してAt top level
をクリックするだけInstall Now
です。
それがあなたがする必要があるすべてです-あなたはhttp://example.net/wp-admin/install.php
(example.net
この仮想サーバーのドメイン名はどこですか)にアクセスすることでWordpressのインストールを完了することができます。DNSレコードがまだServices > Preview Website
反映されていない場合は、Virtualminメニューから移動できます。
この手順を複数回繰り返して、すべて同じVultrサーバー上に複数のWordpressサイトを作成できます。
はじめにWordPressは、インターネット上の主要なコンテンツ管理システムです。ブログから動的コンテンツを備えた複雑なWebサイトまで、あらゆるものを強化します
別のシステムを使用していますか?Forkは、PHPで記述されたオープンソースのCMSです。フォークのソースコードはGitHubでホストされています。このガイドでは、Fork CMのインストール方法を説明します
VultrインスタンスはWordPressブログを実行するための優れた方法ですが、WordPressの注目すべき拡張機能はWooCommerceです。これは、
Ghostは、Ember.js管理クライアント、JSON API、およびHandlebars.jsを利用したテーマAPIを備えたNode.js上に構築された最新のオープンソースの公開プラットフォームです。ゴース
別のシステムを使用していますか?Ghostは、201年以降、開発者や一般ユーザーの間で人気を博しているオープンソースのブログプラットフォームです。
別のシステムを使用していますか?MODX Revolutionは、高速、柔軟、スケーラブル、無料、オープンソースのエンタープライズグレードのコンテンツ管理システム(CMS)であり、i
別のシステムを使用していますか?Forkは、PHPで記述されたオープンソースのCMSです。フォークのソースコードはGitHubでホストされています。このガイドでは、Fork CMのインストール方法を説明します
別のシステムを使用していますか?MODX Revolutionは、高速、柔軟、スケーラブル、無料、オープンソースのエンタープライズグレードのコンテンツ管理システム(CMS)であり、i
別のシステムを使用していますか?Ghostは、201年以降、開発者や一般ユーザーの間で人気を博しているオープンソースのブログプラットフォームです。
別のシステムを使用していますか?MODX Revolutionは、PHPで記述された、高速、柔軟、スケーラブル、オープンソースのエンタープライズグレードのコンテンツ管理システム(CMS)です。それは
別のシステムを使用していますか?Forkは、PHPで記述されたオープンソースのCMSです。フォークのソースコードはGitHubでホストされています。このガイドでは、Fork CMのインストール方法を説明します
別のシステムを使用していますか?Ghostはオープンソースのブログプラットフォームで、2013年のリリース以降、開発者や一般ユーザーの間で人気を博しています。私
別のシステムを使用していますか?Dotclearは非常にシンプルなブログエンジンです。オープンソースで使いやすいです。このチュートリアルでは、インストールを実行します
Ghostは、WordPressに匹敵する最新かつ最高の新興企業です。ゴースト開発者が両方を使用することを決定したため、テーマの開発はすばやく簡単に学ぶことができます
はじめにOpenBSDのインストールをデフォルトに近づけ、パッケージを追加しないほど、安全性が高まります。もっとコモながら
別のシステムを使用していますか?Ghostは、201年以降、開発者や一般ユーザーの間で人気を博しているオープンソースのブログプラットフォームです。
別のシステムを使用していますか?Ghostは、201年以降、開発者や一般ユーザーの間で人気を博しているオープンソースのブログプラットフォームです。
別のシステムを使用していますか?Dotclearは、PHPの上に構築された非常にシンプルなブログエンジンです。このチュートリアルでは、UbuntにDotclearをインストールします
Neosは革新的なオープンソースのコンテンツ管理システムであり、オンラインコンテンツの作成と編集に最適です。著者と編集者を念頭に置いて、Neo
ヘルスケアにおけるAIは、過去数十年から大きな飛躍を遂げました。したがって、ヘルスケアにおけるAIの未来は、日々成長を続けています。
最近、Appleは問題を修正するための補足アップデートであるmacOS Catalina 10.15.4をリリースしましたが、このアップデートにより、Macマシンのブリックにつながる問題がさらに発生しているようです。詳細については、この記事をお読みください
原子力は、過去の出来事のために私たちが決して尊重しないことを常に軽蔑していますが、それは必ずしも悪ではありません。詳細については、投稿をお読みください。
これを読んで、人工知能が小規模企業の間でどのように人気を博しているか、そして人工知能がどのように成長し、競合他社に優位に立つ可能性を高めているかを理解してください。
私たちのコンピューターは、ジャーナリングファイルシステムと呼ばれる組織化された方法ですべてのデータを保存します。これは、検索を押すとすぐにコンピューターがファイルを検索して表示できるようにする効率的な方法です。https://wethegeek.com/?p = 94116&preview = true
ビッグデータと人工知能は流行語ですが、それらがどのように相互に関連しているか知っていますか?さて、この記事を最後まで読んで、同じことを知ってください。
LiteCartは、PHP、jQuery、およびHTML 5で記述された無料のオープンソースのショッピングカートプラットフォームです。シンプルで軽量、使いやすいeコマースソフトウォー
NFSはネットワークベースのファイルシステムであり、コンピューターはコンピューターネットワークを介してファイルにアクセスできます。このガイドでは、NFを介してフォルダーを公開する方法について説明します
別のシステムを使用していますか?Matomo(旧Piwik)は、Google Analyticsのオープンな代替手段であるオープンソースの分析プラットフォームです。Matomoのソースはoでホストされています
HTTPライブストリーミング(HLS)は、Apple Inc.によって実装された非常に堅牢なストリーミングビデオプロトコルです。HLSは、ファイアウォール、プロキシ、