Docker 學習總結

 問題一:

Get https://registry-1.docker.io/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

解決方案:

修改docker鏡像源:
docker默認的源爲國外官方源,下載速度較慢,可改爲國內,加速
方案一
修改或新增 /etc/docker/daemon.json
# vi /etc/docker/daemon.json
{
"registry-mirrors": ["http://hub-mirror.c.163.com"]
}
systemctl restart docker.service

問題二:

redis 由於目標計算機積極拒絕,無法連接

解決方案:

https://blog.csdn.net/weixin_42456466/article/details/87270959

命令總結:

檢查當前 CentOS 系統內核版本
 uname -r 

檢查當前 CentOS 系統版本
cat /etc/redhat-release

Linux安裝
CentOS安裝命令
sudo yum update
sudo yum install docker

Ubuntu
sudo apt-get update
sudo apt-get docker.io

查看docker版本
docker  -v

Docker鏡像檢索
docker search 鏡像名

例如:docker search redis

鏡像下載
docker pull 鏡像名
docker pull  redis
docker pull ubuntu:16.04   #帶版本號

鏡像列表
docker images
其中PEPOSITORY是鏡像名:TAG是軟件版本,latest爲最新版本;IMAGE_ID是當前鏡像的唯一標識;
CREATED是當前鏡像創建時間;VIRTUAL SIZE是當前鏡像的大小。

鏡像刪除
docker rmi image-id
刪除所有鏡像
docker  rmi $(docker images -q)

容器列表
運行:          docker ps 
運行和停止:    docker ps -a

容器啓動
docker run --name container-name -d image-name
--name參數是爲容器取的名稱,-d表示detached,意味着執行這句命令後控制檯將不會被阻礙,可繼續輸入命令操作;
最後的image-name是要使用哪個鏡像來運行容器
例如:  docker run --name test-redis -d redis
        docker run -p 8080:80 nginx  #“-p 8080:80”告訴Docker將本地主機端口8080映射到Docker容器的端口80。您應該能夠從http://localhost:8080訪問nginx服務器

啓動容器
docker start container-name/container-id
例如: docker start test-redis

停止容器
docker stop container-name/container-id
例如:docker stop test-redis

端口映射
映射容器6379端口到本機的6378端口
docker run -d -p 6378:6379 --name port-redis redis

刪除容器
單個: docker rm container-id
所有: docker rm $(docker ps -a -q)
     
容器日誌
docker logs  container-name /container-id
例如: docker logs port-redis

登陸容器
docker  exec -it  container-id/container-name bash

docker鏡像
都放在docker官網上
docker hub:https://hub.docker.com/


查看鏡像的創建歷史
docker history nginx
docker image history nginx

使用幫助選項檢查Docker安裝上的最新可用命令:
docker --help
要使用特定命令的選項,可以使用該命令的help選項。例如,要使用docker run命令選項,可以使用以下命令:
docker run --help


目前,有13個管理命令和41個通用命令。下面是我們的docker命令:
docker attach-將本地輸入/輸出/錯誤流附加到正在運行的容器。
docker commit-從容器的當前更改狀態創建一個新鏡像。
docker exec-在正在運行的容器中運行命令。
docker history-顯示鏡像的歷史記錄。
docker info-顯示系統信息,包括鏡像和容器數。
docker inspect-查找有關Docker容器和鏡像的系統級信息。
docker login-登錄到本地註冊表或Docker Hub。
docker pull-從本地註冊表或Docker Hub中提取鏡像或存儲庫。
docker ps-列出容器的各種屬性。
docker restart-停止並啓動容器。
docker rm-移除容器。
docker rmi-刪除鏡像。
docker run-在一個獨立的容器中運行一個命令。
docker search-在Docker Hub中搜索鏡像。
docker start-啓動已經停止的容器。
docker stop-停止運行容器。
docker version -提供Docker版本信息。
docker info:
它將向您顯示各種重要信息,如服務器版本、存儲驅動程序、內核版本、操作系統、總內存等等。當您試圖爲當前的Docker安裝增加新的資源或試圖解決系統級資源分配問題時,這些信息可能很有用。這也是一種快速檢查正在運行、暫停和停止的容器數量以及下載到系統的鏡像數量的方法

您不需要註冊Docker Hub即可拉取鏡像。但是,如果要將圖像推送到Docker Hub,則需要註冊,然後使用Docker login命令登錄:$ docker login --username = yourhubusername --email = [email protected]


Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

解決辦法
$ systemctl daemon-reload
$ sudo service docker restart

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章