您好,登錄后才能下訂單哦!
這期內容當中小編將會給大家帶來有關Docker中怎么設置數據科學環境,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
什么是Docker?為什么要嘗試一下?
Docker是在指定環境(稱為容器)中創建,部署和運行所需應用程序的最簡單,最靈活的方法之一。 當然,你問自己什么是容器?
非技術性的解釋:就像上圖所示,在我們的情況下,您的本地機器是一個已經在生產東西的島。 為了改善這一點,您需要其他工具,這些工具(就像Docker徽標一樣)裝在小容器中。 一旦設置好并運行它們,它們就可以使用了。
技術說明:容器是打包代碼及其所有依賴項的軟件的標準單元,因此應用程序可以從一個計算環境快速運行到另一個計算環境。 Docker容器映像是一個輕量級的,獨立的,可執行的軟件軟件包,其中包含運行應用程序所需的一切:代碼,運行時,系統工具,系統庫和設置。 其他重要術語:
圖片:只是容器的快照。
Dockerfile:這是一個Yaml文件,用于構建您的映像。 在本課程的最后,您將擁有一個yaml文件模板,并將其用于您自己的容器規范。
DockerHub:在這里您可以推拉Docker映像并將其用于您自己的需求。 基本上,GitHub僅用于Docker。
為什么要使用Docker?
讓我向您概述我喜歡使用Docker的主要原因:
對于您作為數據科學家或數據分析師而言,泊塢窗意味著您可以專注于探索,轉換和建模數據,而無需首先考慮您的數據環境所運行的系統。 通過使用準備在Docker容器中運行的數千種應用程序之一,您不必擔心分別安裝和連接它們。 Docker允許您在需要時在幾秒鐘內部署所選的工作環境。
假設您不是項目中唯一的工作人員,但是您的團隊成員也需要掌握代碼。 現在,一個選擇是,每個隊友都可以在具有不同體系結構,不同庫和不同版本應用程序的環境中運行代碼。 docker選項是每個成員都可以訪問相同的容器映像,并使用docker啟動該映像并準備就緒。 Docker為團隊中的每個人提供了可重復的數據環境,因此您可以立即開始進行協作。
Docker當然還有其他幾個好處,特別是如果您使用的是Enterprise版本。 絕對值得探索,不僅會使您作為數據科學家受益。
安裝和運行Docker
您可以立即安裝Docker桌面,這是您入門所需的內容:在此處訪問Docker Hub,為Mac或Windows選擇Docker版本并進行安裝。 在您的本地機器上啟動Docker之后,您就可以在頂部導航欄上看到這只可愛的小鯨魚-做得很好。
通過單擊Docker徽標,您可以查看Docker是否正在運行。 另一種選擇是打開命令行并輸入" docker info",以便您看到正在運行的內容。 以下是一些基本的Docker命令:
docker login#登錄Docker注冊表
docker run#創建一個新容器并啟動
docker start #啟動一個現有的容器
docker stop
docker ps [-a] #顯示所有容器
docker rm
docker rmi $(docker images -q)#刪除所有鏡像
您可以從一個簡單的示例開始,嘗試使用Jupyter筆記本。 您要做的就是在Docker Hub中查找映像,打開終端并運行docker。 在下面的示例中,您可以找到在localhost:8888上運行的Jupyter —簡單!
docker run -p 8888:8888 jupyter/scipy-notebook:2c80cf3537ca
雖然我們現在可以在容器中試用我們的應用程序,但它并不是高級數據科學家正在尋找的完整數據環境。 您可能想要使用更高級的工具,例如Nifi進行數據攝取和處理,Kafka進行數據流傳輸,以及使用SQL或NonSQL數據庫在兩者之間存儲一些表。 我們還能使用Docker嗎? 答案:是的,當然可以-Docker在這里為您管理所有工作。
Docker Compose:將它們組合在一起
要設置所需的數據環境,您可能希望在我們的本地計算機上運行多個容器。 這就是為什么我們使用Docker Compose。 Compose是用于定義和運行多容器Docker應用程序的工具。 雖然單獨連接每個容器可能很耗時,但docker compose允許多個容器的集合以非常直接的方式通過其自己的網絡進行交互。 使用compose時,您首先使用yaml文件配置應用程序的服務,然后使用單個命令(docker compose up)來創建并啟動先前定義的所有服務。*
在下面的內容中,您可以找到入門的主要步驟:
使用Dockerfile定義您的應用環境,以便輕松復制
在docker-compose.yml中指定構成數據環境的所有服務
在保存yaml文件的文件夾中打開終端,然后運行docker-compose up
docker-compose.yml可能類似于以下內容。 并且盡管您可以肯定使用以下內容作為模板,但絕對應該為自己配置一次:
version: '3' services: zookeeper: hostname: zookeeper container_name: zookeeper_dataenv image: 'bitnami/zookeeper:latest' environment: - ALLOW_ANONYMOUS_LOGIN=yes nifi: image: mkobit/nifi container_name: nifi_dataenv ports: - 8080:8080 - 8081:8081 environment: - NIFI_WEB_HTTP_PORT=8080 - NIFI_ZK_CONNECT_STRING=zookeeper:2181 minimal-jupyter-notebook: image: jupyter/minimal-notebook:latest ports: - 8888:8888 mongodb: image: mongo:latest container_name: mongodb_dataenv environment: - MONGO_DATA_DIR=/data/db - MONGO_LOG_DIR=/dev/null ports: - 27017:27017 grafana: image: bitnami/grafana:latest container_name: grafana_dataenv ports: - 3000:3000 db: image: 'postgres:9.6.3-alpine' container_name: psql_dataenv ports: - 5432:5432 environment: POSTGRES_DB: psql_data_environment POSTGRES_USER: psql_user POSTGRES_PASSWORD: psql PGDATA: /opt/psql_data restart: "no"
上述就是小編為大家分享的Docker中怎么設置數據科學環境了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。