55 lines
3.3 KiB
Markdown
55 lines
3.3 KiB
Markdown
## FastAPI - Быстрый курс [2024] by Артём Шумейко
|
||
Видео: https://youtu.be/gBfkX9H3szQ
|
||
|
||
Освой backend разработку на FastAPI с НУЛЯ до развертывания в продакшн за 3 месяца: https://clck.ru/38iU5C
|
||
Прочитать отзывы к курсу можно на Stepik: https://clck.ru/38ZdhZ
|
||
|
||
## Предупреждение
|
||
Если у вас Python 3.9 или ниже, замените `<тип1> | <тип2>` на `Union[<тип1>, <тип2>]`
|
||
|
||
## Создание репозитория
|
||
```
|
||
git init
|
||
git remote add origin git@github.com:<никнейм>/<названиеРепозитория>.git
|
||
.... add gitignore
|
||
git add .
|
||
git commit -m "..."
|
||
git branch -M main
|
||
git push -u origin main
|
||
```
|
||
|
||
## Подготовка сервера
|
||
### git
|
||
```
|
||
sudo apt-get update
|
||
sudo apt-get install git
|
||
```
|
||
|
||
### docker
|
||
Можно воспользоваться инструкцией: https://docs.docker.com/engine/install/ubuntu/
|
||
или скопировать код ниже
|
||
```
|
||
sudo apt-get update
|
||
sudo apt-get install ca-certificates curl gnupg
|
||
sudo install -m 0755 -d /etc/apt/keyrings
|
||
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
|
||
sudo chmod a+r /etc/apt/keyrings/docker.gpg
|
||
|
||
echo \
|
||
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
|
||
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
|
||
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
|
||
sudo apt-get update
|
||
|
||
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
|
||
```
|
||
|
||
### Запуск приложения
|
||
Создание образа (коробки) с приложением
|
||
```
|
||
docker build . --tag fastapi_app
|
||
```
|
||
Запуск образа в контейнере с пробросом портов для доступа к контейнеру из интернета
|
||
```
|
||
docker run -p 80:80 fastapi_app
|
||
``` |