Docker for Windows Installerhtml
在安裝前,須要確保目標機器已經開啓了硬件虛擬化和 HyperV ;在安裝的過程當中建議不要進行其它操做,它須要自動重啓。linux
Docker for MacOSgithub
鏡像加速器:registry mirror https://registry.docker-cn.comdocker
安裝完成後可打開 bash 窗口檢查安裝是否正常。shell
# 查看當前安裝版本 docker -v # 查看當前詳細信息 docker -info # 登陸 Docker docker login
portainer: 可視化的管理界面,可選操做;(VSCode 裏面的 Docker 插件也是能夠進行相關操做)ubuntu
docker volume create portainer_data docker run -d -p 9000:9000 --name portainer --restart always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer
執行成功後瀏覽 127.0.0.1:9000 便可。bash
Docker 鏡像是一個只讀的環境模板,裏面只存放了咱們須要運行程序的基礎環境配置。架構
# 獲取鏡像 docker pull [選項] [Docker Registry 地址[:端口號]/]倉庫名[:標籤] # 查看當前已經下載下來的全部鏡像 docker images docker image ls # 顯示全部懸掛鏡像(倉庫名、標籤均爲 <none> 的鏡像) docker image ls -f dangling=true # 以特定格式顯示 docker image ls -q docker image ls --format "{{.ID}}: {{.Repository}}" docker image ls --format "table {{.ID}}\t{{.Repository}}\t{{.Tag}}" # 查看鏡像體積 docker system df # 刪除指定鏡像 docker image rm [選項] <鏡像1> [<鏡像2> ...] docker rmi container_id
注:刪除鏡像前,請先刪除對應的容器。網站
示例腳本以下所示:
docker build -t friendlyname .# 使用此目錄的 Dockerfile 建立鏡像 docker run -p 4000:80 friendlyname # 運行端口 4000 到 90 的「友好名稱」映射 docker run -d -p 4000:80 friendlyname # 內容相同,但在分離模式下 docker ps # 查看全部正在運行的容器的列表 docker stop <hash> # 平穩地中止指定的容器 docker ps -a # 查看全部容器的列表,甚至包含未運行的容器 docker kill <hash> # 強制關閉指定的容器 docker rm <hash> # 今後機器中刪除指定的容器 docker rm $(docker ps -a -q) # 今後機器中刪除全部容器 docker images -a # 顯示此機器上的全部鏡像 docker rmi <imagename> # 今後機器中刪除指定的鏡像 docker rmi $(docker images -q) # 今後機器中刪除全部鏡像 docker login # 使用您的 Docker 憑證登陸此 CLI 會話 docker tag <image> username/repository:tag # 標記 <image> 以上傳到鏡像庫 docker push username/repository:tag # 將已標記的鏡像上傳到鏡像庫 docker run username/repository:tag # 運行鏡像庫中的鏡像
容器是從鏡像的建立的運行實例;簡單的說,它是在鏡像上面又建立了一層可讀寫層。容器之間相互隔離。
# 查看當前正在運行的容器 docker container ls docker ps # 查看當前全部容器實例 docker container ls -a docker ps -a # 新建(若不存在)並啓動一個容器實例 docker run image # 新建(若不存在)並後臺啓動一個容器實例 docker run -d image # 新建(若不存在)並以交互模式啓動一個容器實例 docker run -it image # 啓動已終止的容器 docker start conatiner_id docker container start conatiner_id #中止指定容器 docker stop conatiner_id docker container stop conatiner_id # 中止全部容器(在 powershell 中操做) docker stop $(docker ps -aq) # 刪除指定容器 docker rm conatiner_id # 查看指定容器的運行日誌 docker logs conatiner_id
倉庫是集中存放鏡像的地方,倉庫分爲公開倉庫和私有倉庫兩種,最大的公開倉庫是Docker Hub,提供了數量龐大的鏡像供用戶下載,國內的公開倉庫包括Docker Pool等,能夠提供大陸用戶更穩定、更快的訪問。
# 查找鏡像 docker search keywords # 拉取鏡像 docker pull repo_name docker push username/repo_name