Вы устали платить за облака, которые не используете на полную? Или хотите хранить свои файлы, сайты, бэкапы — но не доверяете коммерческим сервисам? Или просто хотите понять, как всё это работает изнутри? Я сам сделал свой сервер на Raspberry Pi три года назад — и до сих пор он работает без сбоев, потребляя меньше энергии, чем лампочка. И да, это реально проще, чем кажется.
В этой статье — пошагово: как собрать сервер, настроить его, избежать типичных ошибок и сделать так, чтобы он не превратился в «электронный кирпич» через месяц. Никакой теории про «облачные архитектуры» — только то, что нужно, чтобы сервер начал работать и не сломался.
- Что вам понадобится
- Шаг 1: Установите ОС
- Шаг 2: Подключитесь и обновите систему
- Шаг 3: Перенесите данные на внешний диск
- Шаг 4: Установите серверное ПО
- Шаг 5: Доступ извне — настройте домен и динамический IP
- Частые ошибки — и как их избежать
- Что выбрать — в зависимости от вашей ситуации
- Как лучше сделать — практические рекомендации
- Итог: что делать прямо сейчас
Что вам понадобится
Собирать сервер на Raspberry Pi — это как собрать ПК из деталей. Только дешевле и тише. Вот минимальный набор:
- Raspberry Pi 4 (2–4 ГБ ОЗУ) — Pi 3 тоже подойдёт, но Pi 4 быстрее и стабильнее. 2 ГБ — минимум, 4 ГБ — идеально, если будете запускать контейнеры или базы данных.
- MicroSD-карта 32 ГБ (класс 10 или U3) — не берите дешёвые китайские. Лучше SanDisk Extreme или Samsung EVO. ОС и логи будут писаться на неё постоянно — дешёвая карта сдохнет за пару месяцев.
- Блок питания 5 В / 3 А с USB-C — не используйте зарядки от телефонов. Pi 4 потребляет до 3 А при нагрузке. Недостаток питания — главная причина зависаний и повреждений карты памяти.
- Корпус с вентилятором — Pi 4 греется. Без охлаждения он будет снижать частоту, чтобы не перегреться. Вентилятор — не роскошь, а необходимость.
- Жёсткий диск (опционально, но сильно рекомендую) — SSD через USB 3.0 (например, Samsung T7) или HDD 2.5″ с внешним питанием. ОС можно оставить на SD-карте, а данные — на диске. Это продлит жизнь карте и ускорит работу.
- Кабель Ethernet — Wi-Fi работает, но для сервера стабильный провод — обязательный пункт. Даже если вы думаете, что «Wi-Fi хватит» — он не хватит.
Всё это стоит около 10–15 тысяч рублей — меньше, чем один месяц аренды облачного сервера в AWS или Hetzner.
Шаг 1: Установите ОС
Не устанавливайте Ubuntu Server или Debian «вручную». Это не сложно, но зачем усложнять? Используйте Raspberry Pi Imager — официальная утилита от Raspberry Pi Foundation.
- Скачайте Raspberry Pi Imager (для Windows, macOS или Linux).
- Вставьте MicroSD-карту в компьютер.
- Выберите в программе: Operating System → Raspberry Pi OS (64-bit).
- Нажмите Storage → Choose Storage — выберите вашу карту.
- Нажмите Write. Ждите 5–10 минут.
Важно: перед записью нажмите на значок шестерёнки (Advanced Options) и включите:
- Enable SSH — чтобы подключаться по сети без монитора.
- Set username and password — не оставляйте pi:raspberry. Придумайте свой логин и пароль.
- Configure Wi-Fi — если не используете Ethernet, добавьте имя сети и пароль.
После записи выньте карту, вставьте в Pi, подключите питание и кабель Ethernet. Через 1–2 минуты он запустится.
Шаг 2: Подключитесь и обновите систему
Откройте терминал на своём компьютере и введите:
ssh pi@raspberrypi.local
Если всё работает — вас попросят ввести пароль. Введите тот, который вы задали в Imager.
После входа сразу обновите систему:
sudo apt update && sudo apt upgrade -y
Это займёт 5–15 минут. Не пропускайте — уязвимости в старых версиях — главный путь для взлома.
Шаг 3: Перенесите данные на внешний диск
Теперь подключите SSD или HDD через USB 3.0. Проверьте, что диск определился:
lsblk
Вы увидите что-то вроде:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 500G 0 disk
└─sda1 8:1 0 500G 0 part
mmcblk0 179:0 0 32G 0 disk
└─mmcblk0p1 179:1 0 32G 0 part /
Здесь sda1 — ваш внешний диск. Отформатируйте его в ext4 (если он новый):
sudo mkfs.ext4 /dev/sda1
Создайте папку для данных и смонтируйте диск:
sudo mkdir /mnt/data
sudo mount /dev/sda1 /mnt/data
Чтобы диск монтировался автоматически при загрузке, отредактируйте файл /etc/fstab:
sudo nano /etc/fstab
Добавьте строку:
/dev/sda1 /mnt/data ext4 defaults,noatime 0 2
Сохраните (Ctrl+O, Enter, Ctrl+X). Проверьте:
sudo mount -a
Если ошибок нет — диск теперь будет автоматически подключаться при каждом запуске.
Шаг 4: Установите серверное ПО
Теперь выбираем, что именно будет вашим «облаком». Вот три популярных варианта:
| Цель | Что установить | Почему так |
|---|---|---|
| Хранить файлы, синхронизировать с телефонов | Nextcloud | Самый удобный аналог Dropbox. Есть мобильные приложения, версии файлов, шаринг, календарь. |
| Запускать сайты, веб-приложения | Portainer + Docker | Удобно управлять контейнерами. Можно запускать WordPress, WordPress с MariaDB, Node.js-приложения — всё в изоляции. |
| Резервные копии | Restic + MinIO | Шифрованные бэкапы. Минио — это S3-совместимое хранилище. Подходит для бэкапов из Windows, Mac, Linux. |
Если вы новичок — начните с Nextcloud. Он даёт ощутимый результат: вы сразу можете загружать файлы с телефона и получать к ним доступ из любого браузера.
Установка Nextcloud через Docker:
sudo apt install docker.io docker-compose -y
sudo systemctl enable --now docker
Создайте папку для конфигов:
mkdir -p ~/nextcloud && cd ~/nextcloud
Создайте файл docker-compose.yml:
version: '3.8'
services:
db:
image: mariadb:10.6
command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
restart: always
volumes:
- /mnt/data/nextcloud/db:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=ваш_пароль_для_mysql
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
- MYSQL_PASSWORD=ваш_пароль_для_nextcloud
redis:
image: redis:alpine
restart: always
app:
image: nextcloud:latest
ports:
- 8080:80
links:
- db
- redis
volumes:
- /mnt/data/nextcloud/apps:/var/www/html/apps
- /mnt/data/nextcloud/config:/var/www/html/config
- /mnt/data/nextcloud/data:/var/www/html/data
restart: always
reverse-proxy:
image: nginx:alpine
ports:
- 80:80
- 443:443
volumes:
- /mnt/data/nextcloud/nginx:/etc/nginx/conf.d
- /mnt/data/nextcloud/certs:/etc/nginx/certs
depends_on:
- app
restart: always
Запустите:
docker-compose up -d
Через 2–5 минут зайдите в браузер на http://IP_ВАШЕГО_PI:8080 — вы увидите установку Nextcloud. Укажите администратора, имя базы данных (nextcloud), логин и пароль (как в docker-compose). Готово.
Шаг 5: Доступ извне — настройте домен и динамический IP
Ваш сервер сейчас работает только в локальной сети. Чтобы получить доступ извне — например, с работы или из отпуска — нужно два шага:
- Настроить порт на роутере — откройте доступ к порту 8080 (или 80/443, если используете nginx) на вашем роутере. Ищите в настройках «Port Forwarding» — укажите IP вашего Pi и порт 8080.
- Получить доменное имя — у вас динамический IP от провайдера. Он меняется. Решение: используйте бесплатный сервис вроде DuckDNS. Зарегистрируйтесь, создайте домен (например,
myserver.duckdns.org), скачайте скрипт обновления и настройте его на Pi через cron.
Пример скрипта для DuckDNS:
#!/bin/bash
curl -s "https://www.duckdns.org/update?domains=ВАШ_ДОМЕН&token=ВАШ_ТОКЕН&ip="
Сохраните как ~/duckdns.sh, сделайте исполняемым:
chmod +x ~/duckdns.sh
Добавьте в cron, чтобы обновлялось каждые 5 минут:
crontab -e
Добавьте строку:
*/5 * * * * /home/pi/duckdns.sh >> /var/log/duckdns.log 2>&1
Теперь вы можете зайти на http://myserver.duckdns.org:8080 из любого места.
Частые ошибки — и как их избежать
- Используете дешёвую SD-карту — она выйдет из строя через 3–6 месяцев. Используйте только проверенные модели (SanDisk, Samsung).
- Питание от телефонного зарядного устройства — Pi 4 глючит, зависает, повреждает карту. Берите только 5 В / 3 А с сертификатом.
- Не делаете бэкапы — сервер на Pi — это не «облако». Это ваша личная машина. Если диск сдохнет — всё пропадёт. Делайте бэкапы на другой диск или в облако (например, через rclone в Google Drive).
- Открываете порты без защиты — если вы открыли порт 8080 и не настроили SSL, вас могут взломать. Включите Let’s Encrypt через nginx — это бесплатно и просто.
- Запускаете слишком много сервисов — Pi 4 с 2 ГБ ОЗУ не тянет одновременно Nextcloud, Docker, медиасервер и торрент-клиент. Выбирайте 1–2 цели и делайте их хорошо.
Что выбрать — в зависимости от вашей ситуации
- Если вы хотите просто хранить фото и документы и иметь доступ к ним с телефона — Nextcloud. Это ваш выбор. Просто, надёжно, безопасно.
- Если вы разработчик и хотите тестировать сайты, API, базы данных — Docker + Portainer. Управляйте контейнерами через веб-интерфейс, легко переносите окружения.
- Если вы хотите делать автоматические бэкапы всех своих устройств — Restic + MinIO. Установите MinIO как S3-хранилище, настройте rclone на всех компьютерах — и бэкапы будут идти в фоне, с шифрованием.
- Если вы просто хотите «попробовать» и не знаете, что вам нужно — начните с Nextcloud. Он даст вам ощутимый результат за 2 часа. Потом, если захотите — добавите Docker.
Как лучше сделать — практические рекомендации
- Всегда используйте внешний диск для данных. SD-карта — только для ОС.
- Настройте автоматические обновления:
sudo apt install unattended-upgrades— и система будет сама обновлять безопасные пакеты. - Включите логирование — смотрите
journalctl -u dockerилиtail -f /var/log/nginx/error.log, если что-то не работает. - Используйте Let’s Encrypt для HTTPS. Это бесплатно, и через Certbot это делается за 5 минут.
- Не открывайте порты без необходимости. Если вы не используете сервер извне — не открывайте его. Используйте VPN (WireGuard) для доступа извне — это безопаснее.
- Проверяйте температуру:
vcgencmd measure_temp. Если выше 75°C — улучшайте охлаждение.
Итог: что делать прямо сейчас
Если вы читаете это — вы уже на полпути. Вот что делать в следующие 2 часа:
- Соберите набор: Pi 4, SD-карта, блок питания, корпус с вентилятором, Ethernet-кабель.
- Запишите Raspberry Pi OS на карту через Imager — включите SSH и задайте пароль.
- Запустите Pi, подключите его к роутеру по кабелю.
- Подключитесь по SSH и обновите систему.
- Установите Docker и Nextcloud — по инструкции выше.
- Настройте DuckDNS и проброс порта.
- Зайдите с телефона — загрузите фото. Проверьте, что всё работает.
Если вы это сделаете — у вас уже будет свой облачный сервер. Не на Amazon, не на Google, а на вашем столе. Он будет работать тихо, экономно, и вы будете знать, где ваши данные. Это не просто технический проект — это свобода от зависимостей.
Сервер на Pi — не «для гиков». Это просто способ взять контроль над тем, что вы создаёте и храните. И это доступно каждому, кто готов потратить 2 часа и 10 тысяч рублей.
Информация в этой статье носит ознакомительный характер. Настройка сервера, особенно с доступом из интернета, требует понимания безопасности. Если вы не уверены в своих действиях — проконсультируйтесь с специалистом по информационной безопасности.



