Docker 进阶

数据卷:mysql

建立:docker run -d -p 60000:8080 -v /work/mydocker/tomcat/webapps/:/usr/local/tomcat/webapps/ tomcat;web

说明: 容器中止不会影响数据共享;能够建立有权限的数据卷,好比只读:docker run -it -v 宿主绝对目录:/容器绝对目录:ro 镜像名称;sql

 

Dockerfile的基本知识

 

基本规则:
  • 每一条保留指令必须大写,后边必需要跟上至少一个参数;
  • 指令从上往下顺序执行;
  • 每一条指令都会建立一个新的镜像层,并对镜像提交;

 

指令集:
  • FROM:FROM <IMAGE> 或者 FROM <IMAGE>:<TAG>;
  • MAINTAINER : 做者说明
  • RUN:RUN <command> 或者 RUN ["executable", "params1", "param2"]容器构建时须要执行的命令;
  • EXPOSE: EXPOSE <port> :暴露端口供外部系统使用。
  • WORKDIR:进入容器默认路径。
  • ENV:设置环境变量
  • ADD:增长
  • COPY:复制
  • VOLUME:设置数据卷
  • CMD:运行命令
  • ENTRYPOINT
  • ONBUILD:配置当前建立的镜像做为其余新建立镜像的基础镜像时,所执行的操做指令。
运行docerfile:
docker build -f testfile -t liusir/centos .
 
 
 
Docker-compose 服务编排
 
基本语法:
  1. 每一个docker-compose.yml 必须定义image 或者 build中的一个,其余的是可选的。
  2. image
  3. build
  4. ports
  5. expose
  6. volumes
  7. volumes_from
  8. envioronment
  9. depends_on
  10. links
  11. extra_hosts

服务编排DEMO:docker

version: '2'
services:
    db:
        image: mysql:5.7
        restart: always
        environment:
            MYSQL_ROOT_PASSWORD: docker
            MYSQL_DATABASE: docker
            MYSQL_USER: docker
            MYSQL_PASSWORD: docker
    wordpress:
        depends_on:
            - db
        image: wordpress:latest
        links:
            - db
        ports:
            - "8000:80"
        restart: always
        environment:
            WORDPRESS_DB_HOST: db:3306
            WORDPRESS_DB_USER: docker
            WORDPRESS_DB_PASSWORD: docker
相关文章
相关标签/搜索