Запуск Concourse Worker без использования Docker

Оцените статью

Как запустить Concourse в Docker я уже писал в заметке «Установка и начало работы с Concourse CI«, но использовать докер совершенно не обязательно и можно запустить любой из компонентов как сервис SystemD.

Создаем каталог для запуска Concourse worker и загружаем бинарные файлы

Так как Concourse написан на GO то большинство зависимостей входит в единый бинарный файл и нам достаточно загрузить файлы из GitHub по адресу https://github.com/concourse/concourse/releases.

Загрузка бинарных файлов Concourse с GitHub

Распаковываем архив в каталог /opt/concourse-worker и создаем файл с переменными окружения для запуска воркера.

Так же создаем файл для хранения рабочих файлов.

# mkdir /opt/concourse-worker/data

Файл с переменными окружения для запуска воркера /opt/concourse-worker/worker.env.

CONCOURSE_TSA_HOST=10.88.14.12:2222
CONCOURSE_TSA_PUBLIC_KEY=/opt/concourse-docker/keys/worker/tsa_host_key.pub
CONCOURSE_TSA_WORKER_PRIVATE_KEY=/opt/concourse-docker/keys/worker/worker_key
CONCOURSE_WORK_DIR=/opt/concourse-worker/data
CONCOURSE_CONTAINERD_DNS_PROXY_ENABLE=true
CONCOURSE_CONTAINERD_DNS_SERVER=8.8.8.8

Создаем сервис SystemD для запуска Concourse

Файл сервиса для запуска Concourse /etc/systemd/system/concourse-worker.service.

[Unit]
Description=Concourse Worker
After=network.target

[Service]
Type=simple
WorkingDirectory=/opt/concourse-worker/bin
EnvironmentFile=/opt/concourse-worker/worker.env
ExecStart=/opt/concourse-worker/bin/concourse worker --containerd-dns-proxy-enable --containerd-dns-server=8.8.8.8
Restart=always
RestartSec=10

[Install]
WantedBy=multi-user.target

Проводим тестовый запуск и проверям статус.

# systemctl daemon-reload
# systemctl start concourse-worker.service

Если сервис запустился удачно, то добавляем его в автозагрузку.

# systemctl enable concourse-worker.service

Проверьте, что воркер работает и для этого можно использовать пример с Hello World из прошлой статьи.

Похожие записи

Резервное копирование баз данных MySQL в Linux: краткое руководство с примерами

Резервное копирование — ключевой элемент стратегии обеспечения безопасности и надёжности данных. Для баз данных MySQL, которые широко используются в веб-разработке и других областях, регулярное создание резервных копий особенно важно. В…

Клонирование работающего Linux-сервера с помощью rsync (немного из практики).

Клонирование живого (работающего) Linux-сервера — задача, которая часто возникает при создании резервной копии, переносе системы на новое оборудование или подготовке «горячего» запасного сервера (дурка еще та и именно для подготовки…

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Читать еще статьи

Резервное копирование баз данных MySQL в Linux: краткое руководство с примерами

Резервное копирование баз данных MySQL в Linux: краткое руководство с примерами

Клонирование работающего Linux-сервера с помощью rsync (немного из практики).

Клонирование работающего Linux-сервера с помощью rsync (немного из практики).

Установка Keycloak в Ubuntu 24.04: от тестового запуска до production-конфигурации

Установка Keycloak в Ubuntu 24.04: от тестового запуска до production-конфигурации

Оптимизация хранения медиафайлов WordPress: перенос в облачное S3-хранилище Cloud.ru

Оптимизация хранения медиафайлов WordPress: перенос в облачное S3-хранилище Cloud.ru

Настройка ProxySQL для распределения запросов в кластере MySQL

Настройка ProxySQL для распределения запросов в кластере MySQL

Конфигурация MySQL для микро-vps (минимизация потребления памяти)

Конфигурация MySQL для микро-vps (минимизация потребления памяти)