Skip to content

2024

如何設定 JupyterLab 環境

原文: https://docs.vultr.com/how-to-set-up-a-jupyterlab-environment-on-ubuntu-22-04

介紹

JupyterLab 為資​​料科學和人工智慧專案提供基於 Web 的開發環境。它是一個靈活的介面,允許開發人員配置和管理機器學習和科學計算工作流程。 JupyterLab 是下一代 Jupyter Notebook。它旨在解決 Notebook 的許多可用性問題,並透過支援 40 多種程式語言(包括 R、Python、Scala 和 Julia)大大擴展了其使用的範圍。

先決條件

在開始之前,您應該:

  • 部署 Ubuntu 22.04 伺服器。
  • 建立一個非 root sudo 使用者。

Docker Inside Docker

Docker 無疑以其輕量級、可移植的容器改變了軟體開發和部署的世界。但是如果我告訴你 Docker 本身可以在另一個 Docker 容器中運作呢?恩,那就對了!這個概念通常被稱為 “Docker Inside Docker” 或 “DinD”,為開發人員和系統管理員開闢了一個全新的可能性領域。在這篇文章中,我們將探索嵌套容器化的世界,討論它的眾多好處、各種用例以及在 Docker 中啟動 Docker 的逐步過程。那麼,讓我們深入了解一下吧!

了解 Docker Inside Docker

簡單來說,Docker Inside Docker 涉及在 Docker 容器內執行 Docker。容器內產生了一個新的 Docker 引擎,而不是與主機的 Docker 守護程式交互,為管理容器和映像提供了一個隔離的環境。

Docker Inside Docker 的好處

1. Isolated Development and Testing:

在 Docker 中執行 Docker 允許開發人員創建專門為其應用程式量身定制的隔離環境。這可確保依賴項、配置和執行時間環境在不同的開發階段保持一致,從而更輕鬆地重現和偵錯問題。

2. Enhanced Security and Isolation:

在 Docker 中執行 Docker 允許開發人員創建專門為其應用程式量身定制的隔離環境。這可確保依賴項、配置和執行時間環境在不同的開發階段保持一致,從而更輕鬆地重現和偵錯問題。

3. Simplified CI/CD Pipelines:

Docker Inside Docker 廣泛應用於持續整合和持續部署 (CI/CD) 工作流程。它支援創建用於建置、測試和部署應用程式的獨立的一次性環境,從而實現更快、更可靠的自動化管道。

4. Multi-tenancy and Resource Management:

在多個團隊或使用者需要共用基礎架構上的隔離環境的情況下,嵌套容器化非常有用。透過在 Docker 內部啟動 Docker,可以為每個團隊或使用者提供單獨的 Docker 引擎,確保資源隔離並防止不同應用程式之間的干擾。

使用 Poetry 管理依賴關係以及建置和發布 Python 套件

原文: How to Manage Dependencies and Build & Publish Python Packages using Poetry

本教程涵蓋:

  1. Poetry Installation
  2. Setup project with poetry
  3. A brief introduction to pyproject.toml
  4. Creating a virtual environment with poetry
  5. Dependency management using poetry
  6. Create a Python package
  7. Build a package with Poetry
  8. Publish package with Poetry on PyPI

在建立 Python 套件時,開發人員通常會依賴外部程式庫或不屬於 Python 標準庫的依賴項。手動管理這些第三方函式庫的安裝、卸載或更新是一項繁瑣的任務。這些第三方函式庫具有額外的外部相依性的情況並不罕見,這使得手動管理相依性變得更加複雜。

幸運的是,Python 有依賴管理工具,可以讓第三方函式庫的管理變得更容易。 Poetry 是其中一個值得注意的工具,它不僅有助於依賴管理,還負責創建虛擬環境以及建置和發布 Python 套件。

在本教程中,我們將使用 Poetry 建立、建構和發布一個命令列工具,該工具接收國家/地區名稱作為輸入並輸出其對應的 Alpha3 程式碼。

在 Pycharm 配置 Poetry 環境

原文: Configure a Poetry environment

Poetry 是一個有助於根據專案依賴關係建立 Python 虛擬環境的工具。您可以聲明您的專案所依賴的程式庫,Poetry 將為您安裝和更新它們。

專案依賴項記錄在 pyproject.toml 檔案中,該檔案指定所需的套件、腳本、外掛程式和 URL。有關其結構和格式的更多信息,請參閱 pyproject 參考

要在 PyCharm 中使用 Poetry,您需要將其安裝在您的電腦上並建立特定的 Python 環境。

如何建立第一個 Python 套件並將其上傳到 PyPI

原文: How to Create and Upload Your First Python Package to PyPI

Python package 檔案結構

在開始之前,我們應該知道在 Python 中套件的含義。

Python 套件是一個目錄,其中包含一堆模組以及名為 __init__.py 的依賴檔案。該檔案可以完全為空,您可以使用它來將磁碟上的目錄標記為 Python 套件。

下面顯示了套件目錄的範例:

package/
├── __init__.py
├── module_a.py
├── module_b.py
└── module_c.py

__init__.py 是一個依賴文件,可協助 Python 在套件目錄中尋找可用模組。如果我們刪除這個文件,Python 將無法導入我們的模組。

建立 Python 套件並將其發佈到 PyPI

PyPI 是 Python Package Index 的縮寫,是 Python 程式語言的官方第三方套件儲存庫。它是一個中央儲存庫,託管和分發軟體包供 Python 開發人員使用。

開發人員可以將 Python 套件上傳到 PyPI,其他人可以輕鬆存取這些套件。這些套件可以包括函式庫、框架、實用程式和工具來擴展和增強 Python 的功能。

本文將介紹 PyPI 的優點、套件的元件以及如何建立 PyPI 套件。

什麼是 PyPI?

PyPI 用於尋找和安裝專案的套件。它允許開發人員輕鬆管理依賴項並簡化應用程式的安裝過程。借助 PyPI,他們可以透過重複使用現有程式碼而不是從頭開始編寫所有內容來節省時間和精力。

PyPI 由 Python 軟體基金會 (PSF) 維護,可供開發人員和最終用戶免費使用。它是 Python 生態系統的重要組成部分,為該語言的流行和發展做出了貢獻。

在 Python 中,套件是一種分層組織相關模組、函數和類別的方式。它提供了一種捆綁程式碼的結構化方法,可以將其視為包含一個或多個 Python 模組的目錄。它有助於組織程式碼並使其更易於管理和分發。

Package 通常包含一個 init.py 文件,該文件在導入套件時執行。它可以定義包級屬性、函數和類,可供套件中的其他模組存取。 init.py 檔案也可以包含導入語句以從其他套件導入模組和函數。

可以使用 pip 等套件管理器來安裝和管理 Python 套件,pip 可以自動下載並安裝所需的依賴項。

透過套件,開發人員可以將相關功能封裝到一個單元中,從而更容易重複使用和維護程式碼。例如,流行的 NumPy 套件提供了處理數組和矩陣的功能,而 Pandas 套件提供了用於資料分析和操作的工具。