首页 > 代码库 > docker常用命令

docker常用命令

1docker最新版本的安装

ubuntu为例

docker安装最新版
最新版docker安装,可能会涉及到FQ,所以加入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 宿主机映射到容器内

 

docker常用命令