1.运行容器
docker run -i -t ubuntu /bin/bash
-i 标志保证容器中STDIN是开启的
-t 为创建的容器分配一个伪tty终端
exit 退出当前的容器
2.查看系统中容器的列表
docker ps -a
3.列出最后运行的容器
docker ps -l
4.给容器命名([a-zA-Z0-9_.-])
docker run -name dk_ubuntu_container -i -t ubuntu /bin/bash
5.启动已经停止运行的容器
docker start dk_ubuntu_container(或者这个容器的ID)
6.附着到正在运行的容器
docker attach dk_ubuntuz-container
7.创建守护式容器
docker run -name daemon_dave -d ubuntu /bin/sh -c "while true; do echo hello world; sleep 1; done"
-d 将容器放在后台运行
8.查看正在运行的容器
docker ps
9.获取容器的日志
docker logs daemon_dave
在logs后面加-f参数控制日志
在logs后面加--tail 10查看最后10行
在logs后面加-ft参数加上时间戳
10.查看容器内的进程
docker top daemon_dave
11.在容器内部运行进程
docker exec -d daemon_dave touch /etc/new_config_file
12.在容器内运行交互命令
docker exec -t -i daemon_dave /bin/bash
13.停止守护式容器
docker stop daemon_dave
14.自动重启容器
docker run --restart=always ......
15.获取更多的容器信息
docker inspect daemon_dave
16.删除容器
docker rm id
运行中的docker容器是无法删除,必须先stop或者kill,才能删除
docker rm `docker ps -aq`
或者docker rm $(docker ps -aq)
删除所有容器
17.拉取镜像
docker pull centos
18.搜索镜像
docker search
19.构建自己的镜像
docker build -t="dongkai01/static_web" .
-t为新的镜像设置了仓库和名臣
. 告诉docker到本地目录中去找Dockerfile文件,这里也可以是一个git地址
Dockerfile默认是有构建缓存的,取消构建缓存可以添加参数:
docker build --no-cache -t="dongkai01/static_web" .
从新的镜像启动容器:
docker run -d -p 80 --name static_web dongkai01/static_web nginx -g "daemon off"
nginx -g "daemon off" 以前台运行的方式启动nginx
-p 标志docker运行时公开的网络端口,可以通过两种方式在宿主机上分配端口:
(1)Docker在宿主机上随机选择一个位于49153~65535的一个比较大的端口来映射到容器中的80端口上
(2)可以指定具体的端口映射到80端口
docker ps查看端口的分配情况
docker port 容器ID 80 查看端口绑定情况
-p 8080:80 直接绑定 -p 127.0.0.1:8080:80 直接绑定到IP,前面的是主机的端口,后面
的是容器的端口
20. 推送我们的镜像到docker Hub
docker push dongkai01/static_web
21.删除镜像
docker rmi
22.打包镜像
docker save b72889fa879c>/save.tar
22.导入镜像
docker load -i save.tar
23.进入后台运行的容器
docker attach container_name(多个窗口同时attach时,会产生阻塞)
docker exec -it id /bin/bash
24.导出容器
docker export container_name >test_for_run.tar
25.导入容器为镜像
docker import - test/ubuntu:v1.0
26.采用Dockerfile构建一个镜像
$mkdirmydockerbuild
$ cd mydockerbuild
$ touch Dockerfile
$ vim Dockerfile
输入如下内容:
FROM docker/whalesay:latest
RUNapt-get -y update && apt-get install -y fortunes
CMD /usr/games/fortune -a | cowsay
构建镜像:
docker build -t docker-whale .
后面的点表示当前目录
27.Docker Hub
docker tag 2cc173d5c251 dongkai/docker-whale:latest
docker login --username=dongkai --email=179367003@qq.com
docker push dongkai/docker-whale
28.查看日志
docker logs serene_hamilton[ID/names]
docker logs -f d0eb7edeacc7
[ID/names]
-f 类似tail -f 查看标准输出
29.端口
docker run -d -P training/webapp python app.py
-P 自动绑定端口
docker run -d -p 80:5000 training/webapp python app.py
-p 绑定指定端口 80代表服务器的端口,5000是容器的端口
docker port modest_hawking 5000
查看容器映射的端口情况
30.查看进程
docker top ID/NAME