Архив рубрики: Публикации

Введение в Службу статических веб-приложений Azure

В ходе сборки 2020 Microsoft объявила о предварительном просмотре службы Azure Static Web App — хостинга приложений для статических веб-приложений, построенных на JavaScript. Автоматическое развертывание в производственных и промежуточных средах реализовано в виде интеграции GitHub. Хотя в настоящее время публичный предварительный просмотр, этот сервис легко настроить и начать работу. Вероятно, это будет один из любимых сервисов разработчиков в ближайшем будущем.

 

Что такое служба Static Web App?

Static Web App — это хостинг для статических веб-приложений, построенных на JavaScript. Это практически служба приложений Azure для статических приложений, которую легко настроить и использовать.

Служба Static Web App подключена к репозиторию GitHub, где находится исходный код веб-приложения. Используя действия GitHub, он создает и публикует статическое приложение в производственной или промежуточной среде. Производственная среда всегда основана на какой-то конкретной отрасли. Промежуточная среда имеет изменяющийся URL-адрес и основана на запросах извлечения. В настоящее время разрешена только одна активная промежуточная среда.

Служба Static Web App работает почти как обычная интеграция службы приложений с Azure DevOps. Может быть, слишком общее, следующее изображение хорошо иллюстрирует новый сервис.

Введение в Службу статических веб-приложений Azure

 

Как вы можете заметить, функции Azure также поддерживаются. Есть одно ограничение — эти функции должны быть написаны на JavaScript, так как это единственный поддерживаемый тип функций на данный момент.

 

Где статическое веб-приложение подходит для Azure?

Приятно то, что служба Static Web App заполняет один пустой слот в ряду хостинга приложений и развертывания моделей в Azure.








обслуживаниеОписание
Статический сайтПредложение на основе хранилища BLOB-объектов для полностью статических сайтов.
Статический веб-сайт против Azure DevOpsТо же, что и выше, но мы можем выполнить развертывание из DevOps Azure.
Статическое веб-приложение
Служба приложенийСлужба для размещения приложений с серверным кодом или двоичными файлами
Приложение на виртуальных машинахПользовательские виртуальные машины для хостинга приложений

 

Те, кто помнит старые времена в Azure, вероятно, захотят напомнить нам о вычислительном обслуживании. Мы не указали его, поскольку другие услуги — хорошая замена для него.

 

Настройка службы статического веб-приложения

Перед созданием сервиса нам нужен репозиторий GitHub, к которому подключен наш сервис. Если вы хотите попробовать что-то новое, пожалуйста, создайте один репозиторий GitHub, прежде чем продолжить. Вам это понадобится уже на следующем этапе. После создания репозитория убедитесь, что основная ветка опубликована и доступна.

Мы можем создать сервис Static Web App на портале Azure. На момент написания этого блога поддерживаются не все регионы Azure, так как служба находится в режиме предварительного просмотра.

Обратите внимание, как мы должны указать GitHub репозиторий и ветку. Это то место, где осуществляется развертывание сайта в реальном времени.

Следующим шагом является настройка параметров сборки для статического веб-приложения. Расположение API можно оставить пустым, если в веб-приложении нет функций Azure.

Хитрая вещь — это местоположение артефакта приложения. Это папка, в которую приложение помещает дистрибутивные файлы. Если говорить больше на языке разработчиков ASP.NET, то это папка, в которой приложение публикуется после сборки. Убедитесь, что у вас нет этой папки в хранилище.

Теперь мы можем нажать «Обзор» + «Создать», и через несколько минут у нас уже настроена служба Static Web App. Если все прошло хорошо, мы увидим запущенную службу Static Web App.

Файл рабочего процесса указывает на определение действий GitHub, которое было создано автоматически с помощью сервиса. Если позже вам потребуется изменить настройки, связанные со сборкой, это можно сделать, изменив файл рабочего процесса.

 

Публикация статического приложения

Мы попробовали сервис Static Web App с приложением Angular. Клонировали свой тестовый репозиторий на свою машину, установили Angular CLI и создали новое приложение Angular 9.

mkdir StaticWebAppTest

git clone https://github.com/gpeipman/MyStaticSite.git

npm install -g @angular/cli

ng new StaticWebAppTest

 

Если у вас медленное соединение или диск, тогда идите и возьмите кофе — потребуется время, пока все эти модули node.js не будут установлены.

Когда приложение создано, мы можем создать его и отправить в хранилище.

ng build --prod 

git add. 

git commit –m «приложение angular app» 

git push

 

Если все прошло хорошо, пришло время перейти к GitHub и посмотреть в действиях, работает ли наш рабочий процесс GitHub. Этот рабочий процесс был автоматически создан службой Static Web App и развертывает приложение в производственной среде. После успешного развертывания мы увидим его в разделе «Сервис».

Нажмите на ссылку Обзор, чтобы увидеть статическое приложение, работающее в Azure.

Что мы только что сделали? Мы отправили приложение Angular в репозиторий GitHub, и оно автоматически было опубликовано в нашей службе Static Web App. Это была просто фиксация в хранилище, и после этого все просто произошло.

 

Публикация в сценической среде

Обычно новые функции объединяются с главной веткой с помощью запросов на извлечение. Для статических веб-приложений запросы на извлечение являются промежуточными развертываниями среды. Сейчас может быть только одна заявленная среда, но она, вероятно, изменится в будущем.

Давайте изменим заголовок страницы по умолчанию в файле src/app/app.component.html. Мы добавили слово постановки в название и созданный запрос. Вы можете создать новую ветку из master, внести изменения и отправить ее на GitHub из командной строки. Но вы можете пропустить это тоже. Там можно изменить файл прямо в GitHub и создать новую ветку с запросом pull.

После создания запроса на запуск рабочий процесс Static Web App запускается снова. Когда выполняются действия GitHub, это отображается на странице запроса на получение. После успешной сборки публикуется ссылка на промежуточную среду, чтобы перетащить страницу запроса в качестве комментария бота.

Промежуточную информацию можно увидеть и на портале Azure, если существует промежуточная среда.

Когда мы открываем промежуточную среду в браузере, мы видим изменения, которые мы только что внесли.

После слияния pull-запроса промежуточная среда автоматически удаляется Azure.

 

Настройка действия GitHub

Чтобы изменить определение сборки, мы можем открыть файл yml, показанный в обзоре Static Web App. Этот файл доступен также в нашем хранилище исходного кода. Пример определения сборки здесь.

name: Azure Static Web Apps CI/CD



on:

  push:

    branches:

-  master

  pull_request:

    types: [opened, synchronize, reopened, closed] branches:

-  master



jobs:

  build_and_deploy_job:

    if: github.event_name == 'push' || (github.event_name == 'pull_request' && github.event.action != 'closed') runs-on: ubuntu-latest

    name: Build and Deploy Job

    steps:

- uses: actions/checkout@v1

 - name: Build And Deploy

      id: builddeploy

      uses: Azure/static-web-apps-deploy@v0.0.1-preview

      with:

        azure_static_web_apps_api_token:$ {{ secrets.AZURE_STATIC_WEB_APPS_API_TOKEN_AMBITIOUS_SMOKE_092E9AF03 }} repo_token: $ {{ secrets.GITHUB_TOKEN }} # Used for Github integrations (i.e. PR comments)

        action: 'upload'

        ###### Конфигурации репозитория/сборки - эти значения могут быть настроены в соответствии с требованиями вашего приложения. ######

        app_location:'/ ' # Путь к исходному коду приложения

        api_location:"# Путь к исходному коду Api-необязательно

        app_artifact_location: 'dist/MyStaticSite' # Встроенный каталог содержимого приложения-необязательно

        ###### Конец конфигураций репозитория/сборки ######

   close_pull_request_job:

    if: github.event_name == 'pull_request' && github.event.action == 'closed'     runs-on: ubuntu-latest

    name: Close Pull Request Job

    steps:

 - name: Close Pull Request

      id: closepullrequest

      uses: Azure/static-web-apps-deploy@v0.0.1-preview

      with:

        azure_static_web_apps_api_token:$ {{ secrets.AZURE_STATIC_WEB_APPS_API_TOKEN_AMBITIOUS_SMOKE_092E9AF03 }} action: 'close'

 

Внутренне Microsoft использует свою систему сборки Oryx, которая создана для автоматической компиляции приложений с работающими артефактами в службах Microsoft.

 

Завершение

Статическое веб-приложение Azure хорошо согласуется со службами приложений Azure и статическими веб-сайтами Azure. Есть интеграция с GitHub с использованием действий GitHub. Производственная среда основана на мониторинге данной ветки репозитория исходного кода. Промежуточная среда приходит и уходит на основе создания и объединения запросов на получение. Static Web App не зависит от платформы. Это не заботит операционная система и редактор кода или IDE, которые используют разработчики. Если действия GitHub способны создать статическое веб-приложение, то для работы службы Static Web App достаточно. Хотя сейчас поддерживается только одна промежуточная среда, она, вероятно, изменится в будущем, когда я подумаю о приложениях в активной разработке.



2020-05-22T17:23:05
Microsoft

Как установить Docker на Ubuntu 20.04

Docker — это платформа с контейнерами с открытым исходным кодом, которая позволяет быстро создавать, тестировать и развертывать приложения в виде переносимых контейнеров, которые могут работать практически где угодно. Контейнер представляет собой среду выполнения для одного приложения и включает в себя все, что нужно программному обеспечению для запуска.

Docker является неотъемлемой частью современной разработки программного обеспечения и конвейеров непрерывной интеграции и развертывания DevOps.

Из этой статьи Вы узнаете, как установить Docker на компьютере с Ubuntu 20.04.

Docker доступен для установки из стандартных репозиториев Ubuntu 20.04, но он не всегда может быть последней версией. Мы установим последний пакет Docker из официальных репозиториев Docker.

 

Установка Docker в Ubuntu 20.04

Установка Docker в Ubuntu довольно проста. Мы включим хранилище Docker, импортируем ключ GPG хранилища и установим пакет.

Сначала обновите индекс пакетов и установите зависимости, необходимые для добавления нового HTTPS-репозитория:

sudo apt update

sudo apt install apt-transport-https ca-certificates curl gnupg-agent software-properties-common

 

Импортируйте ключ GPG хранилища с помощью следующей команды curl:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

 

Добавьте репозиторий APT Docker в свою систему:

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

 

Теперь, когда репозиторий Docker включен, вы можете установить любую версию Docker, которая доступна в репозиториях.

  1. Чтобы установить последнюю версию Docker, выполните команды ниже. Если вы хотите установить определенную версию Docker, пропустите этот шаг и перейдите к следующему.
    sudo apt update

    sudo apt install docker-ce docker-ce-cli containerd.io

     

  2. Чтобы установить конкретную версию, сначала перечислите все доступные версии в хранилище Docker:
    sudo apt updateapt list -a docker-ce

    Доступные версии Docker напечатаны во втором столбце. На момент написания этой статьи в официальных репозиториях Docker была доступна только одна версия Docker (5:19.03.9~3-0~ubuntu-focal).

    docker-ce/focal 5:19.03.9~3-0~ubuntu-focal amd64

     

    Установите конкретную версию, добавив =<VERSION>после имени пакета:

    sudo apt install docker-ce=<VERSION> docker-ce-cli=<VERSION> containerd.io

     

После завершения установки служба Docker запустится автоматически. Вы можете проверить это, набрав:

sudo systemctl status docker

 

Вывод будет выглядеть примерно так:

● docker.service - Docker Application Container Engine

     Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)

     Active: active (running) since Thu 2020-05-21 14:47:34 UTC; 42s ago

...

 

Когда выйдет новая версия Docker, вы можете обновить пакеты, используя стандартную команду:

sudo apt update && sudo apt upgrade

 

Если вы хотите предотвратить обновление пакета Docker, пометьте его как сдержанный:

sudo apt-mark hold docker-ce

 

Выполнение команд Docker от имени пользователя без прав root

По умолчанию только команды root и пользователь с правами sudo могут выполнять команды Docker.

Чтобы выполнять команды Docker от имени пользователя, не являющегося пользователем root, вам необходимо добавить своего пользователя в группу Docker, которая создается во время установки пакета Docker CE. Для этого введите:

sudo usermod -aG docker $USER

 

$USER является переменной среды, которая содержит имя пользователя.

Выйдите из системы и войдите снова, чтобы обновить членство в группе.

 

Проверка установки

Чтобы убедиться, что Docker успешно установлен и что вы можете выполнить dockerкоманду без предварительной подготовки sudo, мы запустим тестовый контейнер:

docker container run hello-world

 

Команда загрузит тестовое изображение, если оно не найдено локально, запустит его в контейнере, напечатает сообщение «Hello from Docker» и завершит работу. Вывод должен выглядеть следующим образом:

Как установить Docker на Ubuntu 20.04

 

Контейнер остановится после печати сообщения, потому что у него нет длительного процесса.

По умолчанию Docker извлекает изображения из Docker Hub. Это облачная служба реестра, которая, помимо прочих функций, хранит образы Docker в общедоступных или частных хранилищах.

 

Удаление Docker

Перед удалением Docker рекомендуется удалить все контейнеры, образы, тома и сети.

Выполните следующие команды, чтобы остановить все запущенные контейнеры и удалить все объекты Docker:

docker container stop $(docker container ls -aq)docker system prune -a --volumes

 

Теперь вы можете удалить Docker как любой другой пакет, установленный с apt:

sudo apt purge docker-ce

sudo apt autoremove


 

Вывод

Мы показали вам, как установить Docker на компьютере с Ubuntu 20.04.

Если у вас есть какие-либо вопросы, пожалуйста, оставьте комментарий ниже.



2020-05-22T13:53:58
Установка ПО на Ubuntu

Как запустить сайт на IIS сервере?

Если вы хотите узнать больше о веб-дизайне и разработке, установка Internet Information Services (IIS) на ваш компьютер с Windows 10 — это хороший метод. IIS — это бесплатная функция Windows, включенная в Windows 10, так почему бы не использовать ее?

IIS представляет собой полнофункциональный веб-сервер и сервер FTP с некоторыми мощными инструментами администратора, мощными функциями безопасности и может использоваться для размещения приложений ASP.NET и PHP на одном сервере. Вы даже можете разместить сайты WordPress на IIS.

Существует три способа установки и настройки веб-сайта в IIS в Windows 10; с помощью графического интерфейса пользователя (GUI), PowerShell или Windows CMD. Мы будем использовать каждый метод для базовой установки IIS.

Установите IIS с помощью графического интерфейса

Это метод «укажи и щелкни» для настройки веб-сайта в IIS. Это идеальный метод, если вы не изучили команды PowerShell или Windows.

  1. Начните вводить «включить окна» в строке поиска. В результате появится утилита Turn Windows on/off. Нажмите здесь.

  2. Откроется окно «Функции Windows». Загрузка различных функций может занять некоторое время. Когда это произойдет, установите флажок рядом с Internet Information Services, а затем нажмите кнопку OK.

  3. Установка начнется и может занять несколько минут. По завершении нажмите кнопку «Закрыть».

  4. Чтобы убедиться, что IIS установлен и работает, введите IIS в строке поиска рядом с кнопкой «Пуск». В результате вы увидите Диспетчер информационных служб Интернета. Нажмите на это, чтобы открыть его.

  5. Когда диспетчер IIS откроется, посмотрите в левой части окна в разделе « Подключения» . Раскрывайте древовидное меню, пока не увидите веб-сайт по умолчанию. Это сайт-заполнитель, который устанавливается вместе с IIS. Нажмите на него, чтобы выбрать его.

  6. Справа от диспетчера IIS смотрите в разделе «Просмотр веб-сайта». Нажмите на Обзор *:80 (http). Это откроет веб-сайт по умолчанию в веб-браузере по умолчанию.

  7. Вы увидите веб-страницу, подобную следующей. Обратите внимание, что в адресной строке написано localhost. Это адрес, который нужно ввести, чтобы перейти на ваш новый сайт.

Создайте свою первую веб-страницу для IIS

Прежде чем перейти к двум другим методам установки IIS, давайте посмотрим, где хранятся файлы, которые делают ваш сайт. Мы также сделаем очень простую веб-страницу. Как только вы поймете, как это сделать, вы узнаете основы для изучения веб-дизайна и разработки.

  1. После установки IIS откройте проводник . Перейдите к C:intepubwwwroot. Вот где файлы, которые составляют сайт должны быть сохранены. Вы увидите файл веб-страницы IIS по умолчанию, iisstart.html, и изображение, показанное на странице, iisstart.png. Здесь вы сохраните свою первую веб-страницу.

  2. Откройте Блокнот как администратор. Чтобы сохранить в папку wwwroot , вы должны быть администратором.

  3. Сохраните файл в папку wwwroot. Назовите его index.html и измените тип файла «Сохранить как» на «Все файлы». Затем нажмите кнопку Сохранить.
  4. Теперь, когда он сохранен как правильный тип файла, давайте поместим в него некоторый контент. Введите следующий HTML-код для очень простой веб-страницы и сохраните его:
    <html>

    <body>

    <h1>Hello World!</h1>

    <body>

    </html>

  5. Вернитесь в веб-браузер, который имеет веб-страницу IIS по умолчанию. Нажмите на кнопку обновления. Теперь вы увидите свою первую веб-страницу.

Это оно! Вы только что создали и опубликовали свой первый веб-сайт на IIS.

Установите IIS с помощью команд Windows

Мы можем сократить процесс установки IIS до однострочной команды. Это можно сделать в командной строке Windows или с помощью PowerShell. Сначала мы покажем, как это сделать с помощью команды Windows, но изучение PowerShell принесет большую пользу в будущем.

  1. Введите cmd в строке поиска, и верхний результат должен быть Командная строка. Нажмите на Запуск от имени администратора.

  2. Введите команду DISM / online / enable-feature / featureName: IIS-DefaultDocument / All и нажмите Enter.

  3. Вы увидите индикатор выполнения. Как только он достигнет 100,0%, и вы увидите сообщение «Операция успешно завершена». Вы можете закрыть командную строку. IIS установлен.

  4. Убедитесь, что вы можете открыть диспетчер IIS и убедиться, что установка прошла успешно, используя шаги 4-7 из раздела « Установка IIS с помощью графического интерфейса».

Установите IIS с помощью PowerShell

Обучение таким вещам, как установка IIS в PowerShell, является огромным преимуществом по двум причинам. Во-первых, это самый простой и быстрый способ выполнения большинства административных задач в Windows. Во-вторых, вы можете сохранить свои команды PowerShell, известные как командлеты, в виде сценария и запускать их в любое время на любом компьютере или сервере Windows.

  1. Введите powershell в строке поиска, и одним из результатов должен быть PowerShell ISE . Нажмите на Запуск от имени администратора.

  2. Введите командлет Enable-WindowsOptionalFeature -Online -FeatureName IIS-WebServerRole -NoRestart и запустите его. Вы увидите запуск индикатора выполнения. После завершения убедитесь, что IIS установлен и работает.
  3. Этот шаг не является обязательным, но вы можете сохранить его как скрипт PowerShell, а затем запустить его в любое время. Работайте со скриптом и добавляйте разные параметры. В конце концов, у вас будет скрипт установки IIS, который настраивает все так, как вы хотите, каждый раз, одним щелчком мыши.

Это только начало того, что вы можете сделать, создав собственный сайт в IIS. Также рассмотрите возможность использования IIS для передачи файлов по протоколу FTP или медиа-хостинга. Кроме того, обратитесь к установщику веб-платформы Microsoft для упрощенных способов установки и изучения таких вещей, как WordPress, PHP, Python и другие.



2020-05-22T12:25:48
Вопросы читателей

Запуск командной строки в проводнике

Командная строка является невероятно полезным способом для выполнения определенных задач. Например, если вы хотите запустить программу со специальными параметрами, командная строка — это один из быстрых способов сделать это. Проблема состоит в том, что навигация по структуре каталогов современного компьютера может быть настоящей болью при использовании командной строки. Тем более что Windows 10 поддерживает такие длинные имена папок и программ.

Хорошей новостью является то, что вы можете открыть командную строку прямо из окна Windows Explorer. Вы попадете прямо в эту папку!

Командная строка против PowerShell

Одним из важных моментов, связанных с открытием командной строки в папке, является то, что мы обращаемся именно к командной строке Windows, а не к PowerShell. Хотя обе программы выглядят одинаково, будучи интерфейсом текстовых команд, на самом деле они очень разные.

Командная строка — это простой, легкий текстовый интерфейс для Windows. Напротив, PowerShell — это сложный, мощный инструмент командной строки, который позволяет опытным пользователям выполнять всестороннее управление системой компьютера, среди множества других полезных возможностей.

Командная строка использует «CMD.exe», в то время как PowerShell использует «powershell.exe», поэтому они полностью разделены. Хотя некоторые функции перекрываются, две программы могут использовать разные команды для выполнения одной и той же работы. Эта статья посвящена только командной строке, но некоторые ярлыки также будут работать для PowerShell. Мы укажем, когда это так.

Открыть командную строку с помощью адресной строки Explorer

Когда вы открываете папку Windows Explorer, вы увидите адресную строку, похожую на ту, что в веб-браузере. По умолчанию он показывает путь к текущей папке. Вы можете видеть это здесь.

Если вы нажмете на эту адресную строку, вы можете ввести текст. Набрав «cmd» и нажав Enter, вы откроете командную строку в этом месте.

Это также будет работать, если вы введете «powershell» вместо «cmd». Переносит вас непосредственно к приглашению Windows PowerShell в этой папке.

Добавление «Открыть окно команд здесь»

В ранних версиях Windows 10 существовала запись в контекстном меню под названием «Открыть окно команды здесь», которая открывала командную строку в указанной вами папке. Например, если вы щелкнете правой кнопкой мыши по папке и воспользуетесь этой командой, командная строка запустится с текущей папки.

После обновления 2017 Creator для Windows 10 Microsoft удалила эту опцию. Почему? Скорее всего, именно благодаря усилиям Microsoft оттолкнуть людей от использования командной строки к использованию PowerShell.

Вернуть эту команду не очень сложно, но она требует некоторой обработки в реестре Windows. Если вам неудобно это делать, лучше всего пропустить этот метод, но если вы действительно хотите вернуть эту опцию контекстного меню, вот что нужно сделать.

Сначала нажмите Пуск и введите regedit. Затем нажмите на запись программы regedit.

Открыв редактор реестра, найдите следующий раздел реестра по этому пути:

HKEY_CLASSES_ROOTDirectoryShellCMD

Здесь вещи могут начать казаться немного рискованными, но мы не делаем ничего, что сломало бы ваш компьютер. Но обязательно следуйте этим точным инструкциям!

Щелкните правой кнопкой мыши по ключу и выберите «Разрешения» в контекстном меню.

В открывшемся диалоговом окне нажмите «Дополнительно».

В верхней части окна расширенных настроек вы увидите указанного в списке владельца ключа. Нажмите «Изменить».

Затем введите свое имя пользователя и затем нажмите «Проверить имена», чтобы подтвердить его. Затем нажмите ОК.

Наконец, убедитесь, что установлен флажок Заменить владельца на субконтейнеры и объекты, прежде чем нажимать ОК.

Теперь мы вернулись на страницу разрешений. Выберите «Администраторы» в группе или именах пользователей и выберите «Разрешить» рядом с «Полное управление». Затем нажмите ОК.

Теперь нам нужно восстановить пункт контекстного меню для командной строки.

Вернувшись в окно CMD, все, что нам нужно сделать, это изменить «DWORD» с «HideBasedOnVelocityiD» на «ShowBasedOnVelocityId». Просто щелкните по нему правой кнопкой мыши и выберите «переименовать», затем измените имя DWORD.

Если все прошло по плану, вы должны увидеть опцию «Открыть окно командной строки», когда вы нажимаете SHIFT + правой кнопкой мыши на элементе в окне проводника Windows.

Открытие командной строки с помощью проводника Windows

Этот следующий метод открытия командной строки из окна проводника Windows включает в себя переход к месту хранения самой программы командной строки и запуск ее непосредственно оттуда. Это по-прежнему полезно, когда по тем или иным причинам другие средства открытия командной строки не работают.

Вы можете найти «cmd.exe» в C:WindowsSystem32. Если вы хотите запустить его с правами администратора, просто щелкните правой кнопкой мыши cmd.exe и выберите Запуск от имени администратора . Существует множество команд, которым требуются административные привилегии, и это один из способов запуска командной строки с этими привилегиями, не выходя из Проводника.

Вы в команде сейчас!

Как и в случае с HyperTerminal, Microsoft может в один прекрасный день полностью отказаться от командной строки в пользу PowerShell. Хотя это само по себе неплохо, PowerShell мог бы немного поработать, чтобы помочь неопытным пользователям, которым было бы удобно с командной строкой, использовать обычные функции так же легко. Тем не менее, до того дня, когда командная строка действительно пойдет по пути Dodo, вы можете быть уверены, что это всего лишь несколько щелчков мышью.

Если вам нужно улучшить навыки командной строки, то почему бы не проверить эти 21 команду, которую должен знать каждый пользователь Windows. Вы будете быстро выполнять задания, вооруженные этими невероятно полезными трюками.



2020-05-22T11:45:04
Вопросы читателей

Настройка сети в Ubuntu Server 20.04 LTS

Сегодня в статье рассмотрим примеры по Настройки сети в Ubuntu Server 20.04 LTS. По сравнению с Ubuntu Server 16.04 LTS настройка осуществляется через утилиту Netplan.






NetPlan – это инструмент для управления настройками сети, представленный в Ubuntu начиная с версии 17.10 и выше.




Этот инструмент заменяет файл статических интерфейсов /etc/network/interfaces, который ранее использовался для настройки сетевых интерфейсов в Ubuntu. Теперь вы должны использовать /etc/netplan/*.yaml для ваших изменений в Ubuntu.




Новый файл конфигурации интерфейсов как вы поняли находится в каталоге /etc/netplan/*.yaml.
После чистой установки дистрибутива Ubuntu Server 20.04 в данной директории находится всего один файл. У меня он называется 50-cloud-init.yaml




Не забываем о синтаксисе данного файла. Табуляция не используется и количество пробелов должно быть одинаково для одноименных категорий.

Полезное.




Ещё стоит напомнить что для конфигурирования сети могут быть использованы рендера – NetworkManager и networkd.




NetworkManager в основном используется на настольных компьютерах, а networkd в серверных дистрибутивах, хотя никто не мешает использовать их и в обратном порядке.




При использовании NetworkManager в качестве средства визуализации для управления интерфейсами будет использоваться графический интерфейс NetworkManager.




Настройка сети в Ubuntu Server 20.04




Есть два пути настройки сетевых интерфейсов:




  1. Получение IP адресов при помощи DHCP – автоматическая настройка
  2. Настройка статических IP адресов




Если вы используете какой либо маршрутизатор, то идем по первому пути. Но сначала давайте определимся с именами интерфейсов в нашей системе. Для этого воспользуемся командой ifconfig.




Да, на чистой системе данная утилита не установлена по умолчанию. Её необходимо будет установить. Ну или можно воспользоваться командой ip. Я же человек старых правил ))), мне все-таки по душе утилита ifconfig поэтому набираем:




sudo ifconfig -a




Вывод команды покажет все имеющиеся в системе сетевые интерфейсы. В моей системе команда выдает следующий результат:




enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        ether 14:d6:4d:56:b8:5a  txqueuelen 1000  (Ethernet)
        RX packets 2087766  bytes 2768743733 (2.7 GB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1996135  bytes 201457120 (201.4 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
enp0s8: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        ether 10:78:d2:76:39:b3  txqueuelen 1000  (Ethernet)
        RX packets 10585  bytes 2371990 (2.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 16067  bytes 18280327 (18.2 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
enp0s9: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        ether 10:78:d2:76:39:b3  txqueuelen 1000  (Ethernet)
        RX packets 87766  bytes 68743733 (12.7 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 13819  bytes 12743733 (12.5 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 242  bytes 35780 (35.7 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 242  bytes 35780 (35.7 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0




Как видим из вывода имеются три сетевых интерфейса: enp0s3; enp0s8; enp0s9.




Интерфейс enp0s3 выступает в качестве WAN интерфейса для системы. Остальные два enp0s8 и enp0s9 подключены к двум локальным сетям. В дальнейшем мы их объединим в сетевой мост.




Статья по настройке сетевого моста на Ubuntu Server 18.04  LTS




Настройка сети в Ubuntu Server используя автоматическую настройку по DHCP.




И так с интерфейсами определились, давайте теперь настроим наш интерфейс, который смотрит в инет, на получение автоматических настроек сети по DHCP




Открываем файл настроек Netplan




sudo nano /etc/netplan/*.yaml




Файл должен выглядеть следующим образом (если не так, то редактируем):




network:
  ethernets:
     enp0s3:
         dhcp4: true
         dhcp6: true
         optional: true
  version: 2




Далее применим изменения:




sudo netplan try




Если в синтаксисе нет ошибок, то изменения применятся через 120 секунд, ну или сразу если Вы нажмёте Enter




Настройка сети в Ubuntu Server используя статические маршруты.




Если Вы пошли вторым путем и хотите настроить все IP адреса сами, то вот пример для настройки статических адресов:




network:
  ethernets:
     enp0s3:
         addresses: [ 10.5.5.1/24, 'fe00:a:b:100::1/64']
         gateway4: 10.5.1.1
         nameservers: 
            addresses: [10.5.5.1, 'fe00:a:b:100::1']
            search:
            - lan
         optional: true
  version: 2




  • addresses – это ip адрес который будет назначен вашей сетевой карте.
  • gateway4 – ip адрес вашего роутера
  • nameservers – тут перечисляются DNS сервера. Первый опять же наш роутер.
  • search – тут указываем домен в котором будет произведен поиск. Домен можно настроить при помощи DNS сервера




Далее сохраняем изменения:




sudo netplan try




Проверка параметров сети




Для проверки работоспособности сети можно воспользоваться командой ping и nslookup:




ping 8.8.8.8




  • 8.8.8.8 – ip адрес dns сервера google.




ping 10.5.5.2




10.5.5.2 – ip адрес ПК из вашей сети.




nslookup ya.ru




Server:		127.0.0.53
Address:	127.0.0.53#53
Non-authoritative answer:
Name:	ya.ru
Address: 87.250.250.242
Name:	ya.ru
Address: 2a02:6b8::2:242




Как видим на запрос ответил systemd-resolver 127.0.0.53. Если у Вас настроен собственный DNS сервер и вы хотите его установить по умолчанию для сервера DHCP, то потребуется отредактировать файл настройки systemd-resolver.




Также можем еще посмотреть вывод команды:




systemd-resolve --status




Global
       LLMNR setting: no                  
MulticastDNS setting: no                  
  DNSOverTLS setting: no                  
      DNSSEC setting: no                  
    DNSSEC supported: no                  
          DNSSEC NTA: 10.in-addr.arpa     
                      16.172.in-addr.arpa 
                      168.192.in-addr.arpa
                      17.172.in-addr.arpa 
                      18.172.in-addr.arpa 
                      19.172.in-addr.arpa 
                      20.172.in-addr.arpa 
                      21.172.in-addr.arpa 
                      22.172.in-addr.arpa 
                      23.172.in-addr.arpa 
                      24.172.in-addr.arpa 
                      25.172.in-addr.arpa 
                      26.172.in-addr.arpa 
                      27.172.in-addr.arpa 
                      28.172.in-addr.arpa 
                      29.172.in-addr.arpa 
                      30.172.in-addr.arpa 
                      31.172.in-addr.arpa 
                      corp                
                      d.f.ip6.arpa        
                      home                
                      internal            
                      intranet            
                      lan                 
                      local               
                      private             
                      test                
Link 22 (enp0s3)
      Current Scopes: DNS     
DefaultRoute setting: yes     
       LLMNR setting: yes     
MulticastDNS setting: no      
  DNSOverTLS setting: no      
      DNSSEC setting: no      
    DNSSEC supported: no      
  Current DNS Server: 10.5.5.1
         DNS Servers: 10.5.5.1
          DNS Domain: dom 




Из данного вывода DNS указан для нашего сетевого интерфейса enp0s3 его же IP адрес.




Но глобальная переменная DNS является 127.0.0.53.




Для изменения глобальной переменной необходимо проделать следующие действия:




  1. откройте и отредактируйте следующий файл:




sudo nano /etc/systemd/resolved.conf




[Resolve]
DNS=10.5.5.1
...




Примените изменения:




sudo systemctl restart systemd-resolved.service




Посмотрим еще раз на глобальные переменные DNS




sudo systemd-resolve --status




Global
       LLMNR setting: no                  
MulticastDNS setting: no                  
  DNSOverTLS setting: no                  
      DNSSEC setting: no                  
    DNSSEC supported: no                  
         DNS Servers: 10.5.5.1            
          DNSSEC NTA: 10.in-addr.arpa   
.....




Из вывода видно что наш DNS изменился на 10.5.5.1.




Если воспользуемся командой nslookup, то вывод также покажет что dns сервер 127.0.0.53. Для изменения необходим пакет resolvconf




  1. Устанавливаем resolvconf




sudo apt install resolvconf




Открываем файл и вносим изменения:




nano /etc/resolvconf/resolv.conf.d/head




# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
# 127.0.0.53 is the systemd-resolved stub resolver.
# run "systemd-resolve --status" to see details about the actual nameservers.
nameserver 10.5.5.1




Применим наши изменения




sudo resolvconf -u




Теперь вывод nslookup покажет наш DNS сервер




nslookup ya.ru
Server:		10.5.5.1
Address:	10.5.5.1#53
Non-authoritative answer:
Name:	ya.ru
Address: 87.250.250.242
Name:	ya.ru
Address: 2a02:6b8::2:242




На этом Настройка сети в Ubuntu Server 20.04 LTS закончена.



[endtxt]




RSS




2020-05-22T08:39:05
Network

Установка qBitTorrent на Ubuntu Server 20.04 LTS

Сегодня поговорим о том, как можно Установить и настроить qBitTorrent на Ubuntu Server 20.04 LTS.




qBitTorrent – это полностью бесплатный кроссплатформенный клиент для скачивания торрент-файлов. Помимо внушительного списка форматов, которые вы можете загрузить при помощи данного ПО, вы это можете сделать в большинстве наиболее распространенных операционных систем – поддерживается работа в среде Windows, Linux, macOS, а также FreeBSD и OS/2.




qBitTorrent возможности:




  • Распределенная хэш-таблица (DHT)
  • Сопоставление портов UPnP
  • Сопоставление портов NAT-PMP
  • Ограничение скорости загрузки
  • Ограничение скорости загрузки
  • Стоять в очереди
  • Настраиваемое ограничение на количество одновременно загружаемых одноранговых узлов
  • Инкрементное выделение файлов
  • Комплектация блока уровня кусок
  • Отдельные темы для проверки и загрузки файлов
  • Один поток и один порт для нескольких загрузок торрент
  • Протокол расширения BitTorrent
  • Поддержка расширения мульти-отслежывателя
  • Расширение справедливой торговли
  • Компактный трекер расширение
  • Быстрое резюме
  • Очередь торрент-файлов-проверьте, если быстрое возобновление невозможно
  • Поддержка HTTP seed
  • Возобновление частичных загрузок с других клиентов BitTorrent
  • Размеры файлов больше 2 ГБ
  • Выборочная загрузка многофайловых торрентов
  • IPv6
  • Стек высокопроизводительной сети
  • uTP-расширенный UDP – транспорт с динамическим управлением перегрузками




Установка qBitTorrent на Ubuntu Server 20.04




Для установки qBitTorrent на серверную часть Ubuntu первым делом что надо сделать, так это необходимо добавить репозиторий от разработчика:




sudo add-apt-repository ppa:qbittorrent-team/qbittorrent-stable




Далее устанавливаем утилиту без GUI интерфейса.




sudo apt install qbittorrent-nox




Создадим пользователя qbittorrent-nox и аналогичную группу.




sudo adduser --system --group qbittorrent-nox




Данная команда добавит системного пользователя (без пароля) и создаст директорию в /home/qbittorrent-nox




Также можете добавить своего пользователя в группу qbittorrent-nox следующей командой:




sudo adduser My_username qbittorrent-nox




Настройка QBitTorrent на Ubuntu Server 20.04




Для автоматического запуска qbittorrent в Ubuntu, давайте создадим службу:




sudo nano /etc/systemd/system/qbittorrent-nox.service




Со следующим содержанием:




[Unit]
Description=qBittorrent Command Line Client
After=network.target

[Service]
#Do not change to "simple"
Type=forking
User=qbittorrent-nox
Group=qbittorrent-nox
UMask=007
ExecStart=/usr/bin/qbittorrent-nox -d --webui-port=8080
Restart=on-failure

[Install]
WantedBy=multi-user.target




Запускаем нашу службу:




sudo systemctl start qbittorrent-nox




Также давайте пропишем нашу службу в автозагрузку, чтобы qbittorrent стартовал при перезагрузке системы:




sudo systemctl enable qbittorrent-nox




Для просмотра статус службы набираем:




systemctl status qbittorrent-nox




Если служба запустилась, то двигаемся дальше.




Также можно воспользоваться командой и убедится что на порту 8080 работает наш qbittorrent:




sudo netstat -tupnl | grep 8080




Настройка веб-интерфейса qbittorrent




Для настройки Веб-интерфейса необходимо перейти по адресу.




http://localhost:8080




Если вам необходимо настроить на FQDN адрес, то данная процедура будет описана ниже.




Открывается окно в котором необходимо ввести логин и пароль:




login: admin
password: adminadmin




Установка qBitTorrent на Ubuntu Server




Открывается рабочее пространство qbittorrent:




qbittorrent




Для смены языка необходимо перейти в настройки данной программы, далее вкладка Web UI и в поле language выбрать русский язык.




settings qbittorrent




russian qbittorent




Все остальные настройки по вашему желанию.




Автоматом все скаченные торренты будут помещаться в директорию /home/qbittorrent-nox/download.




Настройка QBitTorrent для Nginx с FQDN




В директории где расположены конфигурационные файлы для сайтов, создайте конфиг для qbittorrent, например так:




sudo nano /etc/nginx/sites-available/torrent.conf




Добавьте следующее содержимое:




server {
    listen      80;
    server_name ваш_сайт.ru;
    access_log  /var/log/nginx/ваш_сайт.ru.access.log;
    error_log   /var/log/nginx/ваш_сайт.ru.error.log;
 location / {
    proxy_pass              http://IP_адрес_qbittorrent:8080;
  }
}




  • Измените ваш_сайт.ru на ваше доменное имя.
  • Измените IP_адрес_qbittorrent на IP_адрес который слушает qbittorrent.




Для HTTPS сайта:




server {
    listen      80;
    server_name ваш_сайт.ru;
    return 301 https://ваш_сайт.ru;
}
server {
        listen 443;
        server_name ваш_сайт.ru
        access_log  /var/log/nginx/ваш_сайт.ru.access.log;
        error_log   /var/log/nginx/ваш_сайт.ru.error.log;
        ssl_certificate         /etc/letsencrypt/live/ваш_сайт.ru/fullchain.pem;
        ssl_trusted_certificate /etc/letsencrypt/live/ваш_сайт.ru/fullchain.pem;
        ssl_certificate_key     /etc/letsencrypt/live/ваш_сайт.ru-/privkey.pem;
  location / {
    proxy_pass              http://IP_адрес_qbittorrent:8080;
  }
}




  • Измените ваш_сайт.ru на ваше доменное имя.
  • Измените IP_адрес_qbittorrent на IP_адрес который слушает qbittorrent.
  • Также не забудьте исправить пути до сертификатов.




После данных манипуляций qbittorrent станет открываться через протокол https.



[endtxt]




RSS



Добавление RSS-ленты на главную страницу этого сайта не поддерживается, так как это может привести к зацикливанию, замедляющему работу вашего сайта. Попробуйте использовать другой блок, например блок Последние записи, для отображения записей сайта.


2020-05-21T19:49:17
torrents