Docker初识

(一)docker介绍html

1.什么是Dokcer?mysql

 1.一个开源的应用容器引擎,让开发者能够打包他们的应用以及依赖包到一个可移植的容器中,而后发布到任何流行的Linux 机器上,也能够实现虚拟化。容器是彻底使用沙箱机制,相互之间不会有任何接口;
 2.go语言编写,在LCX(linux容器)基础上进行的封装

2.简单来讲: linux

  1)就是能够快速部署启动应用
   2)实现虚拟化,完整资源隔离
   3)一次编写,四处运行(有必定的限制,好比Docker是基于Linux 64bit的,没法在32bit的linux/Windows/unix环境下使用)

三、为何要用docker?nginx

1、提供一次性的环境,假如须要安装Mysql,则须要安装不少依赖库、版本等,若是使用Docker则经过镜像就能够直接启动运行               
2、快速动态扩容,使用docker部署了一个应用,能够制做成镜像,而后经过Dokcer快速启动
 3、组建微服务架构,能够在一个机器上模拟出多个微服务,启动多个应用         
4、更好的资源隔离和共享

            一句话:开箱即用,快速部署,可移植性强,环境隔离spring

 

(二)docker核心知识sql

四、Docker仓库、镜像、容器
            Docker 镜像 - Docker images:docker

容器运行时的只读模板,操做系统+软件运行环境+用户程序
比如一个类:

            Docker 容器 - Docker containers:安全

容器包含了某个应用运行所须要的所有环境
比如一个类new出来的对象

            Docker 仓库 - Docker registeries: springboot

用来保存镜像,有公有和私有仓库,咱们能够从仓库下载咱们须要的镜像
比如Maven的中央仓库和本地私服

参考)配置国内镜像仓库:https://blog.csdn.net/zzy1078689276/article/details/77371782服务器

 

(三)Docker容器常见命令

云服务器安装文档:https://help.aliyun.com/document_detail/51853.html?spm=a2c4g.11186623.6.820.RaToNY

        一、 经常使用命令(安装部署好Dokcer后,执行的命令是docker开头),xxx是镜像名称

1.搜索镜像:docker search xxx  
  如:rabbitmq:management    
2.列出当前系统存在的镜像:docker images       
3.拉取镜像:docker pull xxx
   xxx是具体某个镜像名称(格式 REPOSITORY:TAG)
   REPOSITORY:表示镜像的仓库源,TAG:镜像的标签
  如:rabbitmq:management

4.运行一个容器:docker run -d --name "xdclass_mq" -p 5672:5672 -p 15672:15672 rabbitmq:management
    docker run - 运行一个容器
    -d 后台运行
    -p 端口映射
    rabbitmq:management  (格式 REPOSITORY:TAG),若是不指定tag,默认使用最新的
    --name "xxx"      
5.列举当前运行的容器:docker ps  或者  docker ps -n 5    
6.检查容器内部信息:docker inspect 容器名称
7.删除镜像:docker rmi IMAGE_ID
  强制移除镜像无论是否有容器使用该镜像 增长 -f 参数,
  docker rmi -f IMAGE_ID
8.中止某个容器:docker stop 容器名称(或ID)
9.启动某个容器:docker start 容器名称(或ID)
10.移除某个容器: docker rm 容器名称 (容器必须是中止状态)

        文档:

            http://www.javashuo.com/article/p-bburmtsv-eo.html

 

 

(四)Docker部署Nginx服务器实战

   0、先跑一下
              docker run  (首先会从本地找镜像,若是有则直接启动,没有的话,从镜像仓库拉起,再启动)
   一、查找镜像
              docker search nignx 
        二、列举
              docker images 
        三、拉取
              docker pull nignx 
        三、启动(能够多个)
              docker run -d --name "xdclass_nginx" -p 8088:80 nginx 
              docker run -d --name "xdclass_nginx2" -p 8089:80 nginx 
              docker run -d --name "xdclass_nginx3" -p 8090:80 nginx 
        四、访问
            若是是阿里云服务,记得配置安全组,腾讯云也须要配置,这个就是一个防火墙
        服务器访问端口:
            curl "http://127.0.0.1:端口"
              curl "http://127.0.0.1:8088" 

 

 

(五)搭建私有镜像仓库

  1.阿里云镜像仓库:https://dev.aliyun.com/search.html

  二、使用阿里云私有镜像仓库
            1)登陆:  docker login --username=794666918@qq.com registry.cn-shenzhen.aliyuncs.com 
            
            2) 推送本地镜像:
              docker tag [ImageId] registry.cn-shenzhen.aliyuncs.com/xdclass/xdclass_images:[镜像版本号] 
            例子:
              docker tag 2f415b0e9a6e registry.cn-shenzhen.aliyuncs.com/xdclass/xdclass_images:xd_rabbitmq-v1.0.2 
              docker push registry.cn-shenzhen.aliyuncs.com/xdclass/xdclass_images:xd_rabbitmq-v1.0.2 

            3)拉取镜像
                线上服务器拉取镜像:
                      docker login --username=794666918@qq.com registry.cn-shenzhen.aliyuncs.com 

                      docker pull registry.cn-shenzhen.aliyuncs.com/xdclass/xdclass_images:xd_rabbitmq-v1.0.2 

                    启动容器:
                      docker run -d --name "xdclass_mq" -p 5672:5672 -p 15672:15672 2f415b0e9a6e 

 注意这些命令都以【管理】里面的命令为主,这里只是演示

 

docker:

  安装mysql5.6以及如何访问:https://www.cnblogs.com/areyouready/p/8948552.html

  使用docker发布springboot项目:http://www.javashuo.com/article/p-ysczykst-cc.html

相关文章
相关标签/搜索