1docker最新版本的安裝
ubuntu為例
docker安裝最新版 最新版docker安裝,可能會涉及到翻牆,所以加入google host 地址:https://github.com/racaljk/hosts sudo apt-get remove docker docker-engine sudo apt-get update sudo apt-get install linux-image-extra-$(uname -r) linux-image-extra-virtual sudo apt-get install apt-transport-https ca-certificates curl software-properties-common curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - sudo apt-key fingerprint 0EBFCD88 sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" sudo apt-get update apt-get install docker-ce
docker的連接工具
1 sudo apt install gcc 2 sudo apt install make 3 wget https://www.kernel.org/pub/linux/utils/util-linux/v2.24/util-linux-2.24.tar.gz; tar xzvf util-linux-2.24.tar.gz 4 cd util-linux-2.24 5 ./configure --without-ncurses 6 make nsenter 7 看PATH路徑 8 sudo cp nsenter /bin or 下面的情況 9 sudo cp nsenter /usr/local/bin 10 wget -P ~ https://github.com/yeasy/docker_practice/raw/master/_local/.bashrc_docker 11 echo "[ -f ~/.bashrc_docker ] && . ~/.bashrc_docker" >> ~/.bashrc; source ~/.bashrc 12 會增加一些好用的命令 13 root@ubuntu:/data/docker# docker- 14 docker-containerd docker-containerd-shim docker-init docker-pid docker-runc 15 docker-containerd-ctr docker-enter docker-ip docker-proxy
2 docker常用基礎命令
1 docker鏡像與容器 2 1,列出本地已有的所有鏡像 3 docker images 4 REPOSITORY TAG IMAGE ID CREATED SIZE 5 ubuntu 14.04 90d5884b1ee0 5 days ago 188 MB 6 php 5.6 f40e9e0f10c8 9 days ago 444.8 MB 7 nginx latest 6f8d099c3adc 12 days ago 182.7 MB 8 2,拉取鏡像 9 docker pull <倉庫地址>/<鏡像名>:<鏡像tag> 10 docker push <IMAGE_ID>:上傳image 11 docker rmi <IMAGE_ID>:刪除image 12 3,啟動容器 13 docker run -it <鏡像名>:<鏡像tag> /bin/bash 14 docker run -t -i ubuntu:14.04 /bin/bash 15 -t:在新容器內指定一個偽終端或終端。 16 -i:允許你對容器內的標准輸入 (STDIN) 進行交互。 17 該容器不以守護態運行,退出容器即關閉。 18 4,后台守護進程啟動 19 docker run -dit <鏡像名>:<鏡像tag> /bin/bash 20 docker run -dit training/webapp python app.py 21 -d即是以守護態運行 22 5,自定義端口映射,啟動服務 23 宿主機到容器內的端口映射 24 docker run -dit -p <hostPort>:<containerPort> --name <自定義容器名> <鏡像名>:<鏡像tag> /bin/bash && command1 command2 25 docker run -dit -p 5000:5000 training/webapp python app.py 26 -P:默認匹配docker容器的5000端口號到宿主機的49153 to 65535端口 27 -p <HOT_PORT>:<CONTAINER_PORT>:指定端口號 28 --name <自定義容器名> 29 docker run -p 5000:5000:綁定特定端口號(主機的所有網絡接口的5000端口均綁定容器的5000端口) 30 docker run -p 127.0.0.1:5000:5000:綁定主機的特定接口的端口號 #訪問本機的127.0.0.1:5000就能訪問到容器的5000 31 docker run -d -p 127.0.0.1:5000:5000/udp training/webapp python app.py:綁定udp端口號 32 啟動tomcat 33 docker run -dit -p <hostPort>:<containerPort> --name <自定義容器名> <鏡像名>:<鏡像tag> /bin/bash && <tomcat啟動命令> 34 啟動多個進程,使用&&連接多個啟動命令即可 35 6,查看容器進程 36 docker ps #查看運行的容器 37 docker ps -a #查看所有的容器 38 7,快速查看映射的端口號 39 docker port (ID或者名字) 40 得知容器的某個確定端口映射到宿主機的端口號 41 ubuntu@data3:~$ docker port bd6eecdd6b38 42 80/tcp -> 0.0.0.0:8080 43 8,查看日志 44 docker logs [ID或者名字] 可以查看容器內部的標准輸出 45 docker logs -f 7a38a1ad55c6 46 -f:讓 dokcer logs 像使用 tail -f 一樣來輸出容器內部的標准輸出。 47 9,查看容器內的進程 48 docker top [ID或者名字] 來查看容器內部運行的進程 49 10,查看docker的一些底層信息 50 docker inspect [ID或者名字] 51 docker inspect determined_swanson 52 -f:查找特定信息,如docker inspect -f '{{ .NetworkSettings.IPAddress }}' <container> 53 11,停止,重啟,移除 54 docker stop [ID或者名字] 55 docker start [ID或者名字] 56 docker rm [ID或者名字] #容器必須停掉 57 docker rm `docker ps -a -q`:刪除所有容器 58 其他常用命令 59 docker diff <CONTAINER_ID>:查看容器中的變化 60 docker exec -it <CONTAINER> <COMMAND>:在容器里執行命令,並輸出結果 61 進入容器 62 不要使用attach 63 docker exec -it <names> "/bin/bash" 64 docker exec -it hungry_brown "/bin/bash" 65 Docker容器連接(掠過)現在主要是network了 66 docker run -d -P --name <CONTAINER_NAME> --link <CONTAINER_NAME_TO_LINK>:<ALIAS> 67 數據管理 68 -v 宿主機映射到容器內
