docker

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

 

原文地址:https://www.cnblogs.com/Jupiter1994/p/10968310.html