Чтобы разместить на Контейнерном хостинге Golang
приложение и подключиться из него к базе данных Postgres
необходимо выполнить следующие три шага.
Если вы установили утилиту conhos ранее, то просто переходите к следующему пункту. Если не установили, то возспользуйтесь Инструкцией для установки.
Файл конфигурации для создания в Контейнерном хостинге сервиса Golang
с поднятием сервера базы данных Postgres
и подключение к нему из приложения, а также опциональный пример поднятия Adminer
для администрирования баз данных. Подробнее в Файл конфигурации.
Актуальную версию
Postgres
контейнера уточнить в официальном репозитории Postgres
name: name-of-project
services:
golang1:
type: golang
size: mili
active: true
version: latest
pwd: examples/golang-postgres
exclude:
- vendor
command: go build -o main && ./main
ports:
- port: 3000
type: http
depends_on: # Указываем, что сервис должен иметь внутрениие ссылки на
- postgres0 # сервис postgres0
environment:
- PORT=3000
# Далее пробрасываем переменные для подключения
- POSTGRES_PASSWORD=value0
- POSTGRES_USER=value1
- POSTGRES_DB=value2
postgres0:
type: postgres
size: mili
active: true
version: latest
environment:
# Переменные для инициализации базы данных
- POSTGRES_PASSWORD=value0
- POSTGRES_USER=value1
- POSTGRES_DB=value2
Хост базы данных будет доступен в контейнере приложения по переменной окружения
[НАЗВАНИЕ_СЕРВИСА]_HOST
, например для сервисаpostgres0
название переменной хоста внутри контейнера который ссылается на этот сервис черезdepends_on
будетPOSTGRES0_HOST
Для загрузки файлов в облако и запуска сервисов в контейнерах, выполните команду:
conhos deploy
Продолжить изучение