Google Cloud (GCP)
Разверните rtCloud на Google Cloud Compute Engine с помощью стартового скрипта gcp-compute.sh.
Используйте gcp-compute.sh как стартовый скрипт при создании VM-экземпляра Compute Engine. Скрипт запускается автоматически при первой загрузке.
Скачать скрипт: gcp-compute.sh
Шаг 1 — Заполните конфигурацию
Откройте скрипт и отредактируйте блок CONFIGURATION в начале:
# --- Обязательные ---
PROJECT_ID="rtsurvey"
ADMIN_PASSWORD="admin" # Смените после первого входа
# --- Домен + SSL ---
DOMAIN="myapp.example.com"
LETSENCRYPT_EMAIL="admin@example.com"
# --- Встроенный Keycloak ---
EMBED_KEYCLOAK="true"
KEYCLOAK_ADMIN_PASSWORD="${ADMIN_PASSWORD}" # По умолчанию равен ADMIN_PASSWORD
| Поле | Обязательное | Описание |
|---|---|---|
PROJECT_ID | Да | Используется как имя базы данных и идентификатор клиента Keycloak. Строчные буквы, без пробелов. |
ADMIN_PASSWORD | Нет | Пароль администратора приложения и Keycloak. По умолчанию admin — смените после первого входа. |
DOMAIN | Нет | Ваш домен для HTTPS. Оставьте пустым для режима только HTTP. |
LETSENCRYPT_EMAIL | Да (если задан DOMAIN) | Email для уведомлений Let’s Encrypt. |
EMBED_KEYCLOAK | Нет | true для развёртывания встроенного Keycloak (требует 4 ГБ RAM). |
Безопасность: Все пароли по умолчанию равны
admin. Немедленно смените их после первого входа.
Шаг 2 — Создайте VM-экземпляр
- Нажмите Create instance
- Конфигурация машины:
- Серия:
E2 - Тип машины:
e2-medium(4 ГБ RAM) или больше
- Серия:
- Загрузочный диск:
- Операционная система: Ubuntu
- Версия: Ubuntu 22.04 LTS
- Размер: 40 ГБ или больше
- Брандмауэр: отметьте Allow HTTP traffic и Allow HTTPS traffic
- Advanced options → Management → Automation → Startup script → вставьте полное содержимое скрипта
- Нажмите Create
Шаг 3 — Добавьте DNS-запись
Пока VM загружается, добавьте A-запись у вашего DNS-провайдера:
Type : A
Name : myapp
Value : <vm-external-ip>
TTL : 300
Внешний IP можно найти в списке VM-экземпляров в консоли.
Шаг 4 — Отслеживайте прогресс
Используя CLI gcloud:
gcloud compute ssh <instance-name> -- tail -f /var/log/rtcloud-setup.log
Или подключитесь напрямую по SSH:
ssh <username>@<vm-external-ip>
tail -f /var/log/rtcloud-setup.log
Шаг 5 — Откройте приложение
Когда настройка завершится, журнал покажет итоговую информацию с URL приложения и учётными данными. Войдите с именем пользователя admin и паролем admin, затем немедленно смените пароль.
Правила брандмауэра
Флажки GCP Allow HTTP/HTTPS открывают порты 80 и 443. Для прямого доступа к Shiny на порту 3838 добавьте правило брандмауэра:
gcloud compute firewall-rules create allow-shiny \
--allow tcp:3838 \
--target-tags http-server
Или добавьте через консоль: VPC Network → Firewall → Create rule.
Не открывайте порт 3306 (MySQL) — он никогда не должен быть публично доступен.
Статический IP (опционально)
По умолчанию GCP назначает временный внешний IP, который меняется при перезапуске VM. Для сохранения стабильного IP:
- Перейдите в VPC Network → IP addresses
- Нажмите Reserve external static address
- Привяжите его к вашему VM-экземпляру
После развёртывания
Смена пароля
nano /opt/rtcloud/.env
docker compose -f /opt/rtcloud/docker-compose.production.yml up -d --force-recreate rtcloud
Просмотр всех контейнеров
docker compose -f /opt/rtcloud/docker-compose.production.yml ps