---
# System prepended metadata

title: Исн трукция по разворачиванию проекта Mcos

---

# Исн трукция по разворачиванию проекта Mcos



#### 1) Подготавливаем вашу шайтан-машину (macOS)
1. Чтобы быть уверенными что все пройдет гладко, сделаем зачистку:
```bash=
brew uninstall postgis
brew uninstall postgres
brew uninstall postgres@13
```

2. Ставим пакеты:
```bash=
brew install gettext \
             python3  \
             postgres redis
```


Для люнекса надо пакет как минимум:
```bash=
sudo apt install libpq-dev python3-dev
```


> \ - обратная черта (слэш) позволяет нам переводить строку без выполнения команды. То есть следующая строка будет относиться к команде на предыдущей строке.
Это полезно для лучшего визуального восприятия. Лучше чем в одну строку всё


3. Если у вас вылетает ошибка при выполнении brew install:
![](https://i.imgur.com/qDitBZE.png)


ТО ВЫПОЛНИТЕ СЛЕДУЮЩИЕ КОМАНДЫ:
```bash=
sudo chown -R $(whoami)
chmod u+w /usr/local/share/man/man5
```

После этого повторно пробуйте установить пакеты с помощью `brew`

---


#### 2) Подготавливаем базу даных
1. Авторизация

Есть два способа попасть в командную строку Postgresql.
При установке postgreqsl должен был автоматически создаться пользователь с именем **`postgres`**

> Postgresql база даных может создавать использовать пользователей системы (linux/macos , то есть вашей ОС) для авторизации внутри базы даных.
     
> То есть, если вы зайдёте под определённым пользователем в систему, то у вас будет возможность авторизоваться также для выполнения команд в базу даных POstgresql.

> По умолчанию postgresql создает пользователей которые есть в вашей системе
    
* Способ 1
    Выполняем команду для того, чтобы сменить пользователя на **postgres**:
    ```bash
    sudo -i -u postgres
    ```
    после чего нас должно переместить в командную среду пользователя **postgres**.(linux bash environment)
    После чего нужно выполнить
    ```
    psql
    ```
    для того чтобы запустить командную строку postgresql:
    * ![](https://i.imgur.com/1w42yTp.png)


* Способ 2
    ```bash
    psql postgres
    ```
    Таким образом вы должны войти под пользователем postgres.
    
Обычно для тестовых проектов по умолчанию используется пользователь **postgres** для авторизации в базе даных.
Поэтому дальше будем использовать его


2. Дальше выполняем следующие команды для подготовки базы даных:
(команды выполнять из терминала, откройте чистый терминал)
```bash=
psql postgres
```
после чего строка запроса изменится и можно уже давать команды базе даных:
![](https://i.imgur.com/50aF37p.png)

Выполняем:
```sql=
ALTER USER postgres WITH PASSWORD 'postgres';
CREATE DATABASE muffin_tshirts;
```

по идее пользователь postgres уже должен быть создан, но если этого не случилось, выполните следующие команды:
```sql=
CREATE USER postgres WITH PASSWORD 'postgres';
GRANT ALL PRIVILEGES ON DATABASE postgres to postgres;
ALTER USER postgres WITH PASSWORD 'postgres';
CREATE DATABASE muffin_tshirts;
```


По идее всё готово. Можно переходить дальше.

---
#### 3) Скачиваем репозиторий
**--- [ команда 1 ] ---**
```bash=
git clone https://github.com/atmosquare/web-app tshirts
```

это значит
что проект будет скопирован из репозитория в папку (директорию) **tshirts**

То, где вы эту папку разместите - уже ваше дело. Главное чтобы сами знали где.

Совет: разместите в домашней директории.
1. Создайте папку **projects** в домашней директории
2. зайдите в папаку projects и выполните **--- [команду 1] ---**
3. Зайдите в папку (директорию) с проектом

```bash=
cd ~
mkdir projects && cd projects
git clone https://github.com/atmosquare/web-app tshirts
cd tshirts
```
> && - это специальный оператор который позволяет последовательно выполнить несколько команд, пока первая команда не выполнится , следующая не будет выполнена

после выполнения команд выше , вы должны находиться теперь в папке проекта.
Следуйте за **уставшим кроликом** дальше:

---

#### 4) Теперь, когда вы в уютном месте, ставьте виртуальное окружение:

1. Ставим окружение
    ```bash=
    python3 -m venv venv
    ```
    эта команда создаст виртуальное окружение в папке (директории) **venv**, внутри проекта.

2. Активируем окружение (заходим в окружение)
    ```bash=
    . venv/bin/activate
    ```
3. Устанавливаем нужные пакеты python:
    ```bash=
    pip install --upgrade pip
    pip install -r requirements.txt
    ```

4. Пробуем запустить сервер:
    ```bash=
    python3 run_server.py
    ```

---


#### 5) На MacOS после запуска сервера надо переходить
на
* **http://localhost:7000** <<--- эту ссылку открываем в браузере

**ВМЕСТО**
* 0.0.0.0:7000