1.创建一个容器
docker run –name firstD -i -t ubuntu /bin/bash
其中–name表示容器名称,-i表示开启stdin,-t表示开启伪tty终端
如果增加-d表示为后台运行
如果增加-c可以启动后运行相关命令
如果增加–restart=always则可以自动重启
2.启动/关闭容器,查看容器进程
启动:docker start firstD
关闭:docker stop firstD
查看所有的docker进程:docker ps
查看进程详细情况:docker top firstD
杀掉容器进程:docker kill 进程ID
3.重新链接 docker attach firstD 并要回车
4.查看容器日志:docker logs firstD
增加-f表示监控
增加-t表示增加时间戳
增加–tail n表示显示最后n行内容
5.在已经打开的容器中运行命令:docker exec firstD ls -l
6.查看容器详细信息:docker inspect firstD
7.删除容器(必须先停止容器)docker rm firstD
删除全部容器 docker rm docker ps -qa
8.拉取镜像 docker pull centos[:tag号]
显示镜像列表 docker images [镜像名,比如ubuntu]
查找镜像 docker search 查找内容
9.设置国内道客云的代理
echo “DOCKER_OPTS=\”$DOCKER_OPTS –registry-mirror=http://xxx.m.daocloud.io\”” | sudo tee -a /etc/default/docker(需要到道客云注册)
sudo service docker restart
10.使用Dockerfile构建新镜像
Dockerfile内容:
FROM ubuntu 14.04
MAINTAINER chris "xxxxx@163.com"
RUN apt-get update
RUN apt-get install -y nginx
RUN echo 'hi,this is first one' \
>/usr/share/nginx/html/index.html
EXPOSE 80
然后使用docker build -t=”learn01/static_web” .创建镜像
最后的点表示在当前目录找Dockerfile文件
可以看到成功创建后为Successfully built 9e3a9e038544
然后可以启动一个该类型的容器:
docker run -d -p 80 –name static_web2 learn01/static_web nginx -g “daemon off;”
如果使用–no-cache则会重新执行而不采用缓存
查看构建历史docker history 9e3a9e038544
可以通过docker ps看到容器运行使用到了80端口:
0.0.0.0:9001->80/tcp
可以查看该容器的80端口绑定了本地的哪个端口
docker port c36cac2f09d7
结果为:80/tcp -> 0.0.0.0:9001
-p的格式:宿主机IP:宿主Port:容器Port
也可以在docker run 后面使用-p 80:80表示容器的80端口绑定本地的80端口,如果用-P则表示EXPOSE的所有端口都对外开放