1、简介、安装、入门、镜像与仓库、构建服务、fig配置docker、使用docker api
2 docker核心组件:docker客户端和服务器、docker镜像、registry、docker容器
3 docker架构:
docker不支持32位
linux3.8以上内核
内核必须支持cgroup和命名空间功能
1、uname -a
检查安装device-mapper
modprobe dm_mod
yum install -y docker
启动:dockerd &
获取docker信息:docker info
搜索容器:docker search centos
容器安装: docker run -i -t centos /bin/bash #i开启标准化输入 t开启tty
docker run -i -t docker.io/centos /bin/bash
查看正在运行的容器:docker ps
查看所有容器:docker ps -a
安装带名字的容器: docker run --name centostest -i -t centos /bin/bash
删除容器: docker rm wonderful_blackwell
启动容器:docker start centostest
付着到容器:docker attach centostest
创建守护进程容器:docker run --name centos1 -d centos /bin/sh
查看日志:docker logs centostest
docker logs --tail 10 -t centostest #获取最后10行日志,带时间
查看容器内的进程:docker top centostest
启动交互式进程: docker exec -t -i centostest /bin/bash
在容器内运行一个新的后台进程:docker exec -d centostest touch /xxx
重启容器:docker run --restart=always --name centostest -d centos /bin/sh
--restart=on-failure
--restart=on-failure:5 #最多重启5次
获得容器的详细信息:docker inspect centostest
docker镜像:
docker images 列出镜像
docker pull centos:laste
提交自己创建的镜像:
docker commit -m="xxxx" --author="xxx" idxjljldkjf name/name:biaoqian
查看镜像的每一层:
docker history centostest
指定端口映射:
docker run -d -p 80:80 --name mynginx xxx/xxx
docker run -d -P --name mynginx xxx/xxxx #公开所有端口
CMD ["/bin/bash","-l"]
运行时覆盖工作目录:docker run -ti -w /var/log xxx pwd
USER nginx
USER www:www
添加卷:
VOLUME ["/opt/project","/data"]
ADD有解压,COPY没有解压
docker push xxxxx/xxxx
docker rmi xx/xx
运行自己的registry
docker run -p 5000:5000 registry
传容器到自己的镜像:
docker tag xxx docker.image.com:5000/xxx/xxx
docker push docker.image.com:5000/xx/xxx
docker run -t -i docker.image.com:5000/xxx/xx