76 lines
1.8 KiB
Markdown
76 lines
1.8 KiB
Markdown
|
---
|
||
|
title: "Getting Started"
|
||
|
date: 2020-06-28T11:29:09-04:00
|
||
|
description: "A quick setup guide to get a server running"
|
||
|
draft: false
|
||
|
version: "0.2.1"
|
||
|
---
|
||
|
|
||
|
|
||
|
# Installation
|
||
|
Binaries can be downloaded for [windows](https://github.com/5Sigma/conductor/releases/latest/download/conductor-windows.zip), [Linux](https://github.com/5Sigma/conductor/releases/latest/download/conductor-linux.tar.gz),
|
||
|
or [MacOS](https://github.com/5Sigma/conductor/releases/latest/download/conductor-darwin.zip)
|
||
|
|
||
|
## Homebrew
|
||
|
|
||
|
On MacOS Conductor can be installed via Homebrew
|
||
|
```sh
|
||
|
brew tap 5sigma/tap
|
||
|
brew install conductor
|
||
|
```
|
||
|
|
||
|
# Setting up a project
|
||
|
|
||
|
To setup a project for conductor you need to create a `conductor.yaml` somewhere in your project tree.
|
||
|
We will assume you have a stack that consists of 2 seperate components in a directory structure that looks
|
||
|
like this:
|
||
|
|
||
|
```sh
|
||
|
/project
|
||
|
/frontend/
|
||
|
/backend/
|
||
|
/support_service/
|
||
|
```
|
||
|
|
||
|
## Settting up a conductor.yml
|
||
|
|
||
|
Conductor will search for a `conductor.yaml` anywhere in or above the current working directory. We will put the configuration
|
||
|
in the root `/project/` folder so it is accessible from any of the component projects.
|
||
|
|
||
|
{{< infobox >}}
|
||
|
For more information see the full <a ui button right floated" href="/articles/config">Config documentation</a>
|
||
|
{{< /infobox >}}
|
||
|
|
||
|
An example of a minimal configuration file could look like this:
|
||
|
|
||
|
```yaml
|
||
|
components:
|
||
|
- name: frontend
|
||
|
start:
|
||
|
command: npm
|
||
|
args:
|
||
|
- start
|
||
|
- name: backend
|
||
|
start:
|
||
|
command: npm
|
||
|
args:
|
||
|
- start
|
||
|
- name: support
|
||
|
start:
|
||
|
command: python
|
||
|
args:
|
||
|
- main.py
|
||
|
```
|
||
|
|
||
|
Now from the project folder or any folder below it we can launch all 3 components using:
|
||
|
|
||
|
```sh
|
||
|
conductor run
|
||
|
```
|
||
|
|
||
|
Alternatively, we can run a single component by name:
|
||
|
|
||
|
```sh
|
||
|
conductor backend
|
||
|
```
|