СамСебе Сайтолог

у меня есть личный сервер под управлением proxmox. я хочу использовать этот сервер для хостинга нескольких сайтов. в proxmox уже установлен контейнер с NginxProxyManager.
как лучше организовать мою идею? установить контейнер с какой-либо панелью управления сайтами? или поднять несколько контейнеров и в каждый установить по wordpress?

Точка входа для веб трафика будет все равно одна, а то как реализовать сами сайты уже зависит от детального ТЗ.

  1. Надо ли предоставлять доступ к виртуальному серверу и сайту другим людям?
  2. Надо ли ограничивать ресурсы под сайт или аккаунт?
  3. Есть ли опыт в разворачивании сайтов на голом сервере?

Если 1 контейнер с админкой, то это аналог shared hosting, тут рекомендовали одну панель, аналог ISP Manager. В ней можно завести пользователей и дать им доступ к сайтам, но SSH/FTP желательно не давать и функционал будет ограничен той панелью, которая имеется, как правило, это будет несколько популярных СУБД, PHP, возможность запуска WP без докера, может даже docker контейнеры. Но на уровне PVE будет сложно разделять ресурсы между сайтами.

Несколько LXC контейнеров с WP внутри это уже аналог VPS на openvz, тут можно каждому сайту выделить диск, оперативки и процессор, можно давать SSH доступ для разворачивания, но можно и в каждый контейнер поставить по веб админке

На все вопросы я отвечу “да”. Думаю, стоит установить какую-либо панель аналог ISP Manager. Спрашиваю потому что не знаю как к этому подступиться так, чтобы потом не переделывать. Хочу сделать сразу и красиво. Но всё-таки просто…

Сам не пробовал, но в ТГ группе советовали вот эту штуку

Вот статья на хабре Туториал: как создать универсальный сервер для дома или небольшого офиса / Хабр

я эту панельку пользую, еще до выхода aapanel

2 лайка

Поставьте просто Apache, Nginx или Caddy и т.д. и сконфигурируйте виртуальные хосты.

На примере Apache:

Для blog.lan :
cоздайте /var/www/blog.lan/public_html/index.html

<html>
  <head>
    <title>Blog</title>
  </head>
  <body>
    <h1>Blog! This is virtual host!</h1>
  </body>
</html>

Файл конфигурации виртуального хоста:
/etc/apache2/sites-available/blog.lan.conf

<VirtualHost *:80>
    ServerAdmin admin@blog.lan
    ServerName blog.lan
    ServerAlias www.blog.lan
    DocumentRoot /var/www/blog.lan/public_html
    ErrorLog ${APACHE_LOG_DIR}/blog.lan_error.log
    CustomLog ${APACHE_LOG_DIR}/blog.lan_access.log combined
</VirtualHost>

Для forum.lan :
cоздайте /var/www/forum.lan/public_html/index.html

<html>
  <head>
    <title>Forum</title>
  </head>
  <body>
    <h1>Forum! This is virtual host!</h1>
  </body>
</html>

Файл конфигурации виртуального хоста:
/etc/apache2/sites-available/forum.lan.conf

<VirtualHost *:80>
    ServerAdmin webmaster@forum.lan
    ServerName forum.lan
    ServerAlias www.forum.lan
    DocumentRoot /var/www/forum.lan/public_html
    ErrorLog ${APACHE_LOG_DIR}/forum.lan_error.log
    CustomLog ${APACHE_LOG_DIR}/forum.lan_access.log combined
</VirtualHost>

Активация файлов конфигурации хостов:

sudo a2ensite blog.lan.conf
sudo a2ensite forum.lan.conf

Необходимо отключить файл конфигурации, использующийся по умолчанию:

sudo a2dissite 000-default.conf

Перезапустить Apache:

sudo systemctl restart apache2

Таким образом, под управлением Apache у вас будут два сайта http://blog.lan и http://forum.lan на одном IP.

Caddy и Nginx сильно не отличаются и настраиваются аналогично.

1 лайк