Docker入门

docker的基本架构组成


 

  • DOCKER_HOST
    • Docker Daemon  docker核心进程
    • Containers         docker的所有容器存放位置,相当于在装好的系统上安装的文件的数据盘,基于image的可读可写层
    • Images              docker的镜像文件,相当于一个组装好的系统的C盘,是只读层。
  • Client  向deemon发送docker的指令让其执行
  • Registry  docker的远程镜像库,可以从镜像库中拉取各种镜像

 

相关的指令


 docker images 展示当前本地的所有的images内容

docker run 启动某个容器

-p 端口映射,主机端口:容器端口

-d 是后台守护进程运行

docker cp 拷贝文件至容器中

docker stop id 停止某个容器

docker commit -m 'xxx' containId newName 将当前的contain保存为一个image

docker rm contianerId 删除某一个容器

docker rmi imageId 删除某一个镜像,注意删除镜像之前要删除基于此image的所有contain,包括停止的

 

Dockerfile 


 

mkdir mdocker

cd mdocker

vim Dockerfile

vim index.html

docker build -t tagname .

docker run -d -p 80:80 --name hello tagname

curl http://localhost

 

dockerfile 每一行命令都是镜像的每一层

 

Volume 挂载点


 

方法一

docker run -d -p 80:80 --name nginx -v /usr/share/nginx/html nginx

docker inspect nginx

...得到该container的一些配置单,如下

其中,mount中的soucre可以得到宿主机对应的挂载位置

 

由于是mac,需要多一步跳转到虚拟机

 screen ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/tty 

然后

cd 到上述source中即可进行更改

 

docker exec -it nginx /bin/bash

可以进入到container中去,发现更改结果和我们在宿主机中是一致的

 

方法二

 

方法三

挂载其他容器的数据

 

posted @ 2018-10-08 01:10  Grim_Reaper  阅读(229)  评论(0编辑  收藏  举报