docker笔记

0.启动停止docker服务:

                  service docker start

                   service docker stop   

1.查看docke镜像文件:docker images

         

 2.拉取(下载)镜像文件:

         docker pull  hello-world                                (hello-world镜像文件名)                /**         note: ----------配置阿里云镜像加速器:自行百度          */

 

3.docker pull 下来的命令都默认存在 /var/lib/docker/文件夹下          

    

4.镜像命令:

     列出所有镜像 :            docker images -a

    搜索docker镜像 :         docker search openjdk                          (第一个是官方版)       docker search  -s 3 openjdk   列出前3的

  

  移除镜像:        docker rmi hello-world                        强制(单个镜像)删除           docker rmi -f hello-world  -f 镜像id      

 

5.容器命令:

         启动容器:      docker  run <参数>  image   <command>                                 

                               参数说明   -d    后台运行容器 

                                                -i       以交互式运行容器(结合t)

                                                -t         为容器重新分配输入一个伪输入终端

                                                -P         随机端口映射

                                                -p          指定端口映射

       例子: docker run -it --name mycentos centos                         centos也可是换成id号-------以该镜像实例化一个对象                     

 进入容器的后台:docker exec -it 67f490500a02 /bin/bash                67f490500a02是容器的id号

 

exit          ---------------关闭该容器并退出

1.查看docker运行的镜像有那些:

2.查看历史:  -a 所有历史,   -l 上一次的         -lq只显示容器编号        -n 2   列出前两条

启动容器: docker start <镜像名| ID>           docker  restart <镜像名| id>

停止容器     docker stop <镜像名| ID>            docker kill <镜像名| ID>                       暴力停止

移除容器: docker rm  -f <镜像名| ID>   强删               docker rm   <镜像名| ID>  删除没有运行的

 

6.镜像UnionFS【联合文件系统---------------docker的底层实现原理】      镜像不是搬家----------他是搬楼。-------------linux内核运行流程差不多。

 

容器:+docker

 集装箱     |  --------------tomcat

  底层环境                        | ---------------------------jdk8

                                                                                  | -------------------------centos

                                                                                                                            | -------------------------kernel

                  |--------------nginx

底层环境在集装箱层可以共享。

 

 

启动tomcat:

新开一个终端:

7.自己提交创建镜像:

docker commit -a='lmj_authorName' -m="tomcat with doc by dim_Commit_Info"  8c4f02fa6555 lmj/mytomcat1.2


[-a  创建者姓名,-m提交信息, 8c4f02fa6555容器id号, lmj/mytomcat1.2自制镜像的名字]

删除正在运行的镜像程序:

docker rm -f $(docker ps -q)

启动刚才自己制作的镜像:

docker run -it -p 7777:8080 lmj/mytomcat1.2

浏览器运行:

-it是前台启动,会再控制台打印诸多详情信息;

-d 后台启动:                            docker run -d -p 6666:8080 tomcat

 

 

 

8.docker容器数据卷:

         docker运行的数据的持久化技术,将本次所有运行产生的临时信息保存到磁盘,永久备份(且数据共享)

        docker run -it -v /宿主机绝对路径目录:/容器内目录  镜像名

1.                    docker run -it -v /myDataVolume:/dataVolumeContainer centos                      -------------------docker与主机达成协议,实现文件共享。主机是个u盘,插到了docker上,并从docker主机上拷贝centos镜像(应用)运行产生的数据【备注:/是根目录,主机和docker根目录下如果没有该文件会自动创建】

2.docker inspect   centos                                      inspect检查命令,检测数据卷是否挂载成功

运行结果:

只要有一端开着数据就永远同步的(即使一端已经关了)

容器内目录只读:         docker run -it -v /myDataVolume:/dataVolumeContainer:ro centos                   -----------ro   read only

实例2继承实例1:        docker run -it --name exple2 --volumes -from exple1 centos

 

 

9.DockerFile解析:

           maven build

            jar 

            java -jar ms.....

  类比:

           编写dockerfile       ------------>                              dockerbuild  获得自定义镜像     ----------->           run

 

 

1.规则:  保留字大写(指令,操作)+参数(操作数)

 

Dockerfile------------<build>------------------Docker镜像---------------<run>------------Docker容器【镜像+进程】

 

  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值