Поделиться через


Установка PowerShell в Alpine Linux

Все пакеты доступны на нашей странице выпусков GitHub. После установки пакета запустите pwsh из терминала. Выполните pwsh-preview, если вы установили предварительный выпуск. Перед установкой ознакомьтесь с приведенным ниже списком поддерживаемых версий.

Примечание.

PowerShell 7.4 — это обновление на месте, которое удаляет предыдущие версии PowerShell 7. Предварительные версии PowerShell можно установить параллельно с другими версиями PowerShell. Если необходимо запустить PowerShell 7.4 параллельно с предыдущей версией, переустановите предыдущую версию с помощью двоичного метода архива .

Этапы установки

Установка в Alpine основана на скачивании пакета tar.gz со страницы выпусков. URL-адрес пакета зависит от версии PowerShell, которую вы хотите установить.

  • PowerShell 7.4.2 — https://github.com/PowerShell/PowerShell/releases/download/v7.4.2/powershell-7.4.2-linux-musl-x64.tar.gz
  • PowerShell 7.2.19 — https://github.com/PowerShell/PowerShell/releases/download/v7.2.19/powershell-7.2.19-linux-alpine-x64.tar.gz
  • PowerShell 7.5-preview.2 — https://github.com/PowerShell/PowerShell/releases/download/v7.5.0-preview.2/powershell-7.5.0-preview.2-linux-musl-x64.tar.gz

Затем в терминале выполните следующие команды оболочки для установки PowerShell 7.4:

# install the requirements
sudo apk add --no-cache \
    ca-certificates \
    less \
    ncurses-terminfo-base \
    krb5-libs \
    libgcc \
    libintl \
    libssl1.1 \
    libstdc++ \
    tzdata \
    userspace-rcu \
    zlib \
    icu-libs \
    curl

sudo apk -X https://dl-cdn.alpinelinux.org/alpine/edge/main add --no-cache \
    lttng-ust

# Download the powershell '.tar.gz' archive
curl -L https://github.com/PowerShell/PowerShell/releases/download/v7.4.2/powershell-7.4.2-linux-musl-x64.tar.gz -o /tmp/powershell.tar.gz

# Create the target folder where powershell will be placed
sudo mkdir -p /opt/microsoft/powershell/7

# Expand powershell to the target folder
sudo tar zxf /tmp/powershell.tar.gz -C /opt/microsoft/powershell/7

# Set execute permissions
sudo chmod +x /opt/microsoft/powershell/7/pwsh

# Create the symbolic link that points to pwsh
sudo ln -s /opt/microsoft/powershell/7/pwsh /usr/bin/pwsh

# Start PowerShell
pwsh

Удаление PowerShell

sudo rm -rf /usr/bin/pwsh /opt/microsoft/powershell

Пути PowerShell

  • $PSHOME имеет значение /opt/microsoft/powershell/7/.
  • Скрипты профилей хранятся в следующих расположениях:
    • AllUsersAllHosts — $PSHOME/profile.ps1
    • AllUsersCurrentHost — $PSHOME/Microsoft.PowerShell_profile.ps1
    • CurrentUserAllHosts — ~/.config/powershell/profile.ps1
    • CurrentUserCurrentHost — ~/.config/powershell/Microsoft.PowerShell_profile.ps1
  • Модули хранятся в следующих расположениях:
    • Пользовательские модули — ~/.local/share/powershell/Modules
    • Общие модули — /usr/local/share/powershell/Modules
    • Модули по умолчанию — $PSHOME/Modules
  • Журнал PSReadLine записывается в ~/.local/share/powershell/PSReadLine/ConsoleHost_history.txt

Профили учитывают конфигурацию PowerShell для отдельных узлов, поэтому профили конкретных узлов по умолчанию находятся в Microsoft.PowerShell_profile.ps1 в тех же расположениях.

PowerShell отвечает требованиям спецификации каталога размещения файлов, связанных со средой настольной графической среды (X-сервера), стандартизированного XDG (X Desktop Group) в Linux.

Поддерживаемые версии

Корпорация Майкрософт поддерживает PowerShell до тех пор, пока PowerShell не достигнет конца поддержки или версия Alpine достигает конца срока действия.

Alpine 3.16 — поддержка ОС заканчивается на 2024-05-23

Alpine 3.17 — поддержка ОС заканчивается на 2024-11-22

В настоящее время образы Docker PowerShell недоступны для Alpine 3.18 и 3.19.

Предварительные версии PowerShell предоставляются только для тестирования и обратной связи.

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

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