sudo usermod -aG docker wzt 更改权限
三大概念
docker 镜像 image
docker 容器 container
docker 仓库 respository
镜像
docker images 查看所有镜像
docker pull ubuntu:14.04 拉取14.04 的ubuntu镜像
docker images -a 查看所有镜像
docker rmi IMAGEID 删除该id的镜像
构造镜像的两种方式
1.docker build -t wzt_docker -f Dockerfile . 创建一个以Dockerfile为基准的docker镜像
2.docker commit
build(用 dockerfile)&pull(直接拉取镜像)
容器
docker ps 查看正在运行的容器
docker ps -a 查看所有容器
docker ps -q 查看容器的id
docker ps -aq 查看所有容器的id
容器的状态共有 7 种:created|restarting|running|removing|paused|exited|dead
docker rm containerID 删除该id的容器
docker rm $(docker ps -aq)删除所有容器
docker ps -f id = a1b2c3 过滤查找容器
docker create -v $PWD/data:/var/mydata --name data_container 创建一个新的容器但不启动它
依靠镜像运行容器
docker run -d -p 80:80 --name nginx -v /usr/share/nginx/html asd
docker run -d -it asd /bin/bash (asd是镜像名)
docker stop containerID 停止运行容器
仓库
docker ps 查看正在运行的容器
交互
1.docker 进入容器的四种方式
docker attach
ssh
nsenter
docker exec -it 1a2b3c /bin/bash
docker exec -it 569f05d5f4fc /bin/bash OR
docker exec -it 569f05d5f4fc /bin/sh OR
sudo docker exec -it 569f05d5f4fc bash
2.退出
exit
Dockerfile语法
FROM base image基础镜像
MAINTAINER 持有者署名
RUN 执行命令
CMD 执行命令
ADD 添加文件
COPY 拷贝文件
EXPOSE 暴露端口
ENV 设定环境变量
ENTRYPOINT 容器入口
拓展
一般来说著名的linux系统基本上分两大类:
1.RedHat系列:Redhat、Centos、Fedora等
2.Debian系列:Debian、Ubuntu等
centos系列用yum拓展包工具
ubuntu系列用apt-get拓展包系列
docker run -it (这里的it是指交互) /bin/bash
镜像分层
挂载
1:
docker run -d --name nginx -v /usr/share/nginx/html asd (最后面是镜像名字)
docker inspect nginx(这是容器名字)
ps:(-v只指定一个文件或者目录,那么在宿主机里面随机生成一个目录名进行挂载)
pps:对宿主机进行修改 docker容器里面一样会修改
2.
docker run -d -v $PWD/test:/soft asd /bin/bash ($PWD 表示当前目录)
3.
docker run --volumes from