Menginstal PowerShell di Alpine Linux

Semua paket tersedia di halaman rilis GitHub kami. Setelah paket diinstal, jalankan pwsh dari terminal. Jalankan pwsh-preview jika Anda menginstal rilis pratinjau. Sebelum menginstal, periksa daftar Versi yang didukung di bawah ini.

Catatan

PowerShell 7.4 adalah peningkatan di tempat yang menghapus versi PowerShell 7 sebelumnya. Versi pratinjau PowerShell dapat diinstal berdampingan dengan versi PowerShell lainnya. Jika Anda perlu menjalankan PowerShell 7.4 berdampingan dengan versi sebelumnya, instal ulang versi sebelumnya menggunakan metode arsip biner.

Langkah-langkah penginstalan

Penginstalan di Alpine didasarkan pada pengunduhan paket tar.gz dari halaman rilis . URL ke paket bergantung pada versi PowerShell yang ingin Anda instal.

  • 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

Kemudian, di terminal, jalankan perintah shell berikut untuk menginstal 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

Hapus instalan PowerShell

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

Jalur PowerShell

  • $PSHOME is /opt/microsoft/powershell/7/
  • Skrip profil disimpan di lokasi berikut:
    • AllUsersAllHosts - $PSHOME/profile.ps1
    • AllUsersCurrentHost - $PSHOME/Microsoft.PowerShell_profile.ps1
    • CurrentUserAllHosts - ~/.config/powershell/profile.ps1
    • CurrentUserCurrentHost - ~/.config/powershell/Microsoft.PowerShell_profile.ps1
  • Modul disimpan di lokasi berikut:
    • Modul pengguna - ~/.local/share/powershell/Modules
    • Modul bersama - /usr/local/share/powershell/Modules
    • Modul default - $PSHOME/Modules
  • Riwayat PSReadLine dicatat dalam ~/.local/share/powershell/PSReadLine/ConsoleHost_history.txt

Profil menghormati konfigurasi per host PowerShell, sehingga profil khusus host default ada di Microsoft.PowerShell_profile.ps1 lokasi yang sama.

PowerShell menghormati Spesifikasi Direktori Dasar XDG di Linux.

Versi yang didukung

Microsoft mendukung PowerShell hingga PowerShell mencapai akhir dukungan atau versi Alpine mencapai akhir masa pakai.

Alpine 3.16 - Dukungan OS berakhir pada 2024-05-23

  • Gambar Docker yang berisi PowerShell 7.2, PowerShell 7.4, dan PowerShell 7.5-preview untuk x64 tersedia dari Registri Artefak Microsoft

Alpine 3.17 - Dukungan OS berakhir pada 2024-11-22

  • Gambar Docker yang berisi PowerShell 7.2, PowerShell 7.4, dan PowerShell 7.5-preview untuk x64 tersedia dari Registri Artefak Microsoft

Gambar Docker PowerShell tidak tersedia untuk Alpine 3.18 dan 3.19 saat ini.

Versi pratinjau PowerShell disediakan hanya untuk pengujian dan umpan balik.

Dukungan penginstalan

Microsoft mendukung metode penginstalan dalam dokumen ini. Mungkin ada metode penginstalan lain yang tersedia dari sumber pihak ketiga lainnya. Meskipun alat dan metode tersebut mungkin berfungsi, Microsoft tidak dapat mendukung metode tersebut.