Инженер данных: Обзор курса Яндекс Практикума (2024)
Обзор курса Инженер данных в Яндекс Практикуме: преимущества программы с трудоустройством, чему вы научитесь + бесплатное начало обучения (2024).
За 6,5 месяцев обучения на курсе Инженер данных в Яндекс Практикуме вы научитесь разрабатывать архитектуру данных. Курс для тех, у кого уже есть опыт в аналитике. Научитесь строить витрины и хранилища, проектировать пайплайны и готовить данные к машинному обучению. Карьерный центр Яндекс Практикума поможет вам найти работу. Первые пять часов обучения на курсе — бесплатно.
На курсы Яндекс Практикума нет скидок и промокодов, но зато обучение на курсе можно начать бесплатно, чтобы определиться покупать ли его.
Преимущества курса Инженер данных в Яндекс Практикуме
- На курсы Яндекс Практикума нет скидок и промокодов, но зато обучение на курсе можно начать бесплатно, чтобы определиться покупать ли его.
- Освоите проектирование пайплайнов.
- Узнаете, как создавать витрины и хранилища.
- Будете учиться на практике вместе с опытной командой.
- Научитесь обрабатывать данные разными инструментами.
- Сделаете и добавите в портфолио 9 проектов.
- Получите помощь в поиске работы после курса.
- Вас поддержат на всех этапах учёбы.
- Возврат денег за оставшиеся дни обучения, если передумаете обучаться.
- Курс можно оплатить в рассрочку от Яндекс Практикума.
Saved searches
Use saved searches to filter your results more quickly
Cancel Create saved search
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.
(Final) Foodgram — дипломный проект. Python-разработчик (бекенд) (Яндекс.Практикум)
themasterid/foodgram-project-react
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Switch branches/tags
Branches Tags
Could not load branches
Nothing to show
Could not load tags
Nothing to show
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Cancel Create
- Local
- Codespaces
HTTPS GitHub CLI
Use Git or checkout with SVN using the web URL.
Work fast with our official CLI. Learn more about the CLI.
Sign In Required
Please sign in to use Codespaces.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching Xcode
If nothing happens, download Xcode and try again.
Launching Visual Studio Code
Your codespace will open once ready.
There was a problem preparing your codespace, please try again.
Latest commit
Git stats
Files
Failed to load latest commit information.
Latest commit message
Commit time
README.md
Продуктовый помощник Foodgram — дипломный проект студента 21 когорты Яндекс.Практикум 2021-2022 гг. Клепикова Д.
После запуска проекта, он будет доступен по адресу http://127.0.0.1 (если развернут на локальной машине в докере) Как запустить и посмотреть в действии описано ниже.
Описание проекта Foodgram
«Продуктовый помощник»: приложение, на котором пользователи публикуют рецепты кулинарных изделий, подписываться на публикации других авторов и добавлять рецепты в свое избранное. Сервис «Список покупок» позволит пользователю создавать список продуктов, которые нужно купить для приготовления выбранных блюд согласно рецепта/ов.
Запуск с использованием CI/CD и Docker
# В Settings - Secrets and variables создаем переменный с вашими данными # Это необходимо для работы с CI/CD, DockerHub, GitHub ALLOWED_HOSTS DB_ENGINE DB_HOST DB_PORT HOST MY_LOGIN MY_PASS PASSPHRASE POSTGRES_DB POSTGRES_PASSWORD POSTGRES_USER SECRET_KEY SSH_KEY USER
Все действия мы будем выполнять в Docker, docker-compose как на локальной машине так и на сервере ВМ Yandex.Cloud. Предварительно установим на ВМ в облаке необходимые компоненты для работы:
# username - ваш логин, ip - ip ВМ под управлением Linux Дистрибутива с пакетной базой deb. ssh username@ip
sudo apt update && sudo apt upgrade -y && sudo apt install curl -y
sudo curl -fsSL https://get.docker.com -o get-docker.sh && sudo sh get-docker.sh && sudo rm get-docker.sh
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
sudo systemctl start docker.service && sudo systemctl enable docker.service
Всё, что нам нужно, установлено, далее, создаем папку /infra в домашней директории /home/username/:
mkdir infra
Предварительно из папки /backend и /frontend загрузим актуальные данные на DockerHub (на вашем ПК) (themasterid — ваш логин на DH):
docker login -u themasterid
cd backend
docker build -t themasterid/foodgram_backend:latest .
docker push themasterid/foodgram_backend:latest
cd frontend
Готовим фронт для приложения, это заготовка для отправки на DH (где themasterid ваш логин на DH):
docker build -t themasterid/foodgram_frontend:latest .
Отправляем на DG:
docker push themasterid/foodgram_frontend:latest
Перенести файлы docker-compose.yml и default.conf на сервер, из папки infra в текущем репозитории (на вашем ПК).
cd infra
scp docker-compose.yml username@server_ip:/home/username/
scp default.conf username@server_ip:/home/username/
Так же, создаем файл .env в директории infra на ВМ:
touch .env
Заполнить в настройках репозитория секреты .env, необходимы для работы postgres в docker
DB_ENGINE='django.db.backends.postgresql' POSTGRES_DB='foodgram' # Задаем имя для БД. POSTGRES_USER='foodgram_u' # Задаем пользователя для БД. POSTGRES_PASSWORD='foodgram_u_pass' # Задаем пароль для БД. DB_HOST='db' DB_PORT='5432' SECRET_KEY='secret' # Задаем секрет. ALLOWED_HOSTS='127.0.0.1, backend' # Вставляем свой IP сервера. DEBUG = False
На этом настройка закончена, далее в папке infra выполняем команду:
docker-compose up -d --build
Проект запустится на ВМ и будет доступен по указанному вами адресу либо IP. Завершение настройки на ВМ:
В папке infra выполняем команду, что бы собрать контейнеры:
docker-compose stop
Удалить вместе с volumes:
# Все данные удалятся! docker-compose down -v
Для доступа к контейнеру backend и сборки финальной части выполняем следующие команды:
docker-compose exec backend python manage.py makemigrations
docker-compose exec backend python manage.py migrate --noinput
docker-compose exec backend python manage.py createsuperuser
docker-compose exec backend python manage.py collectstatic --no-input
Дополнительно можно наполнить DB ингредиентами и тэгами:
docker-compose exec backend python manage.py load_tags
docker-compose exec backend python manage.py load_ingrs
На этом всё, продуктовый помощник запущен, можно наполнять его рецептами и делится с друзьями!
Запуск проекта в Docker на локальной машине.
Для Linux ставим Docker как описано выше, для Windows устанавливаем актуальный Docker Desktop.
Перейти в папку infra и выполнить сборку контейнеров:
docker-compose up -d --build
Для формирования базы из миграций, финальной настройки и заполнении базы тегами и ингридиентами, а так же подтянуть статику, и создаем суперюзера:
docker-compose exec backend python manage.py makemigrations
docker-compose exec backend python manage.py migrate
docker-compose exec backend python manage.py createsuperuser
docker-compose exec backend python manage.py collectstatic --no-input
Дополнительно можно наполнить DB ингредиентами и тэгами:
docker-compose exec backend python manage.py load_tags
docker-compose exec backend python manage.py load_ingrs
В зависимости от настроек либо используем стандартную базу либо создаем базу и пользователя в Postgres (если будет необходимость запустить без Docker):
sudo -u postgres psql
CREATE DATABASE basename;
CREATE USER username WITH ENCRYPTED PASSWORD 'password';
GRANT ALL PRIVILEGES ON DATABASE basename TO username;
Документация к API доступна после запуска
http://127.0.0.1/api/docs/
Курсы Docker в Яндекс Практикум
© 2009– 2024 , ООО «Сравни.ру». При использовании материалов гиперссылка на sravni.ru обязательна. ИНН 7710718303, ОГРН 1087746642774. 109544, г. Москва, бульвар Энтузиастов, дом 2, 26 этаж.
ООО «Сравни.ру» осуществляет деятельность в сфере IT: сервис предоставляет онлайн — услуги по подбору финансовых продуктов, а также распространению рекламы организаций — партнеров в сети Интернет
Мы используем файлы cookie для того, чтобы предоставить пользователям больше возможностей при посещении сайта sravni.ru. Подробнее об условиях использования.
Saved searches
Use saved searches to filter your results more quickly
Cancel Create saved search
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.
Sprint 17 Yandex Practicum (project) Django API / дипломный проект / djoser / python->pdf
LariosDeen/foodgram-project-react
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Switch branches/tags
Branches Tags
Could not load branches
Nothing to show
Could not load tags
Nothing to show
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Cancel Create
- Local
- Codespaces
HTTPS GitHub CLI
Use Git or checkout with SVN using the web URL.
Work fast with our official CLI. Learn more about the CLI.
Sign In Required
Please sign in to use Codespaces.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching Xcode
If nothing happens, download Xcode and try again.
Launching Visual Studio Code
Your codespace will open once ready.
There was a problem preparing your codespace, please try again.
Latest commit
Git stats
Files
Failed to load latest commit information.
Latest commit message
Commit time
README.md
Дипломный проект курса «Бэкенд Разработчик» (Яндекс Практикум)
Онлайн-сервис и API для него. На этом сервисе пользователи могут публиковать рецепты, подписываться на публикации других пользователей, добавлять понравившиеся рецепты в список «Избранное», а перед походом в магазин скачивать сводный список продуктов, необходимых для приготовления одного или нескольких выбранных блюд.
Запуск проекта на Docker Desktop
Скопируйте проект на свой компьютер:
git clone https://github.com/LariosDeen/foodgram-project-react
Cоздайте и активируйте виртуальное окружение для этого проекта:
python3 -m venv env
source env/bin/activate
Установите зависимости из файла requirements.txt:
python3 -m pip install --upgrade pip
pip install -r requirements.txt
Перейдите в директорию проекта:
cd backend
Создайте файл .env в директории backend и заполните его данными по этому образцу:
SECRET_KEY='django-insecure-nsxoy+s&z^f(2$vot&-m!3+uacrm1jikv6!mb+ut&*thlrn=m7' DB_ENGINE=django.db.backends.postgresql POSTGRES_DB=postgres POSTGRES_USER=postgres POSTGRES_PASSWORD=postgres DB_HOST=db DB_PORT=5432 DEBUG=False
Создайте образ backend (текущая директория должна быть backend):
docker build -t dimlar/foodgram_backend:latest .
Перейдите в директорию infra:
cd ../infra
docker-compose up
Выполните миграции в контейнере созданном из образа backend:
docker-compose exec -T backend python manage.py migrate
Загрузите статические файлы в контейнере созданном из образа backend:
docker-compose exec -T backend python manage.py collectstatic --no-input
Запустите проект в браузере. Введите в адресную строку браузера:
localhost
В проекте использованы технологии:
- Python
- React
- Django
- Django REST Framework
- Linux
- Docker
- Docker-compose
- Postgres
- Gunicorn
- Nginx
- Workflow
Проект выполнил студент 31 когорты Яндекс Практикума
Лариос Димитри
https://github.com/LariosDeen
https://t.me/dimilari
About
Sprint 17 Yandex Practicum (project) Django API / дипломный проект / djoser / python->pdf