美文网首页
Docker学习

Docker学习

作者: 代号孤狼 | 来源:发表于2017-05-24 23:59 被阅读81次

    https://www.docker.com/
    Docker is the world's leading software containerization platform

    1、什么是Docker

    Docker是一个用来装应用的容器,就像杯子用来装水,你可以把Hello World放在Docker,也可以把网站放在Docker中,把任何你想得到程序放在Docker

    由Docker公司开源,公布在github上
    跨平台,支持Windows、MacOS、Linux

    2、理解Docker

    2.1 集装箱

    2.2 标准化

    • 运输方式标准化
    • 存储方式标准化
    • API接口标准化

    2.3 隔离

    2.4 Docker解决了什么问题

    把操作系统、jdk、tomcat、代码、配置都放到集装箱里,用鲸鱼运送到服务器上,解决了运行环境不一致
    让快速扩展弹性伸缩变得简单

    3、走进Docker

    Docker的作用,去仓库把镜像拉到本地,命令启动变成容器
    Build 构建镜像
    Ship 运输镜像
    Run 运行镜像

    3.1 镜像

    镜像就是一系列的文件,应用的文件、应用的运行环境的文件ee

    3.2 容器

    容器本质是一个进程

    3.3 仓库

    3.4 安装Docker

    apt-get install -y docker.io  安装命令
    service docker start 服务器启动
    

    3.5 第一个docker镜像

    docker pull [OPTIONS] NAME[:TAG]   拉取的命令
    docker images [OPTIONS] [REPOSITORY[:TAG]]   
    docker run [OPTIONS] IMAGE[:TAG][COMMAND][ARG...]
    
    
    开始敲命令
    docker images
    docker pull hello-world    默认到docker提供的仓库下载
    docker run hello-world    
    

    4、Nginx服务

    用Docker运行Nginx
    Nginx是一个持久运行的容器
    Nginx可以选择前台挂起&后台运行
    进入容器内部

    docker images 查看信息
    docker pull hub.c.163.com/library/nginx:latest 从网易蜂巢拉取
    docker run hub.c.163.com/library/nginx
    docker ps 查看运行的容器
    docker run -d hub.c.163.com/library/nginx 后台运行
    docker exec -it f4 bash   f4是pid根据docker ps 查看
    docker stop pid
    

    Docker网络
    网络类型:Bridge Host使用宿组机的网络 None
    若选择Bridge则需要端口映射

    docker run -d -p 8080:80 hub.c.163.com/library/nginx  做一个端口映射
    docker run -d -P hub.c.163.com/library/nginx 随机映射
    

    5、Docker化的javaweb

    制作自己的镜像
    5.1 写Dockerfile

    先下载tomcat作为基准镜像
    docker pull hub.c.163.com/library/tomcat:latest

    from hub.c.163.com/library/tomcat
    
    MAINTAINER fengjiaping xxx@163.com
    
    COPY jpress.war /usr/local/tomcat/webapps
    
    

    5.2 docker build执行Dockerfile

    必须在Dockerfile的文件中执行
    docker build -t jpress:latest .
    执行后输出信息
    Sending build context to Docker daemon  20.8 MB
    Step 1 : FROM hub.c.163.com/library/tomcat
     ---> 0785a1d16826
    Step 2 : MAINTAINER fengjiaping xxx@163.com
     ---> Running in 253b161090a4
     ---> 3a3e5d8b63dd
    Removing intermediate container 253b161090a4
    Step 3 : COPY jpress.war /usr/local/tomcat/webapps
     ---> 68ca4f225d78
    
    docker run -d -p 8888:8080 jpress
    启动查看是否成功
    

    启动一个mysql

    docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=Fj93092800 -e MYSQL_DATABASE=jpress hub.c.163.com/library/mysql:latest 
    
    docker restart d7 重启一个docker
    

    相关文章

      网友评论

          本文标题:Docker学习

          本文链接:https://www.haomeiwen.com/subject/grxaxxtx.html