00x1:

  端口映射:

  如图:这就是把容器的 5000端口和主机的32768端口相映射,所以通过访问主机的32768端口就可以访问容器的web界面

  这个端口是系统默认的如果自定义命令:docker run -d -p 5123:5000 training/webapp python app.py

  同时可以多端口映射,可映射指定ip。

  

  

  docker logs -f training/webapp 查看容器内web应用信息

 

  docker port 容器名查看映射端口情况,有时候多端口映射的时候有用

 

 00x2:实现两个容器的连接

  实现容器之间的互相通信: 在源容器和接受容器之间的创建一个隧道也就是容器互联:

  命令是link  参数是 link name:alias     name 是连接容器的名字,而alias 是隧道也就是连接的名字:举个实例:是web容器和数据库容器之间的联系

  先创建数据库容器:先下载镜像: docker pull training/postgres

  然后创建数据库容器: docker run -d  -P --name db training/postgres

  先删除之前下载的webapp/training 容器web,然后创建新的容器和数据库容器建立联系

  docker rm -f web

  建立新的容器连接db容器

  docker run -d --name web --link db:db training/webapp python app.py

  这个命令就是创建了名字叫 db的链接,链接的web容器和db容器 如图:

  

  docker ps查看连接情况:

  这个注意的是数据库安全情况,没有用-p 为了不让数据库端口暴露在主机上

  env命令可以查看连接容器的环境变量

  还可以在容器的/etc/host 里面查看具体ip

 00x3:Dockerfile 详情:

  Dockerfile 分为四个部分: 基础镜像信息,维护者信息,镜像操作指定,和容器启动指令,它是由一条一条语句组成,支持#号开头的注释行

  Dockerfile 基本命令: dockerfile 就是利用一系列的指令的顺序解析实现自动的image

通过build 命令执行dockerfile 的描述来构建镜像,dockerfile client 会把整个context 打包发送到Docker

Server端,然后server端build镜像,成功后删除context目录

  Dockerfile catch : 每次都会执行命令后提交一个镜像,如果要重新使用之前的镜像,可以通过-no-cache的方式来禁用这个cache

  Dockerfile 大小写不敏感,但是建议全部大写

  FROM 镜像  必须第一行

  MAINTAINER 标识镜像的作者

  RUN: run就是启动容器,执行命令,然后提交存储层文件变更,如果执行多条命令:需要加上:&& 符号可以有多个run,支持的是两种运行方式:RUN <CMD> /bin/sh -c "cmd" 运行

  CMD命令:CMD命令的作用是容器的默认启动命令,就是执行container的默认操作

  一个dockerfile 只要一个cmd 命令 ,当有多个cmd命令的时候,只执行最后一条。

  EXPOSE声明端口:

  格式是: EXPOSE <端口1><端口2>  这个只是一个声明,不会真正的应用,但是当随机映射端口的时候,也是docker run -P的时候,会自动的使用这个镜像服务端口

  ENV:

  ENV key value

  用来设置环境变量: 当镜像创建容器的时候自动设置环境变量

  WORKDIR 指定当前的工作目录

  这仅仅是基础知识,对于dockerfiles的实战还需加强学习

  

  

docker-网络基础配置和dockerfile的更多相关文章

  1. docker网络基础配置

    常用两种方式: 1)映射容器端口到宿主机 2)容器互联机制 --------------------------------------------- 端口映射实现访问容器的用法: docker ru ...

  2. Docker网络基础:快速指南

    Docker网络基础:快速指南 原文连接:http://blogxinxiucan.sh1.newtouch.com/2017/07/30/Docker网络基础:快速指南/ 了解有关扩展网络功能的默认 ...

  3. Linux网络基础配置

    这是看itercast视频的笔记 Linux网络基础配置 以太网连接 在Linux中,以太网接口被命令为:eth0, eth1等, 0,1代表网卡编号 通过lspci命令可以查看网上硬件信息(如果是u ...

  4. docker数据卷管理及网络基础配置

    数据卷 数据卷容器 数据卷迁移数据 端口映射 容器间通信 数据卷的管理 当需要查看容器内应用产生的数据或者把容器内数据备份及多个容器数据共享.有两种方式,数据卷以及数据卷容器. 数据卷 数据卷是一个可 ...

  5. Docker 网络基础介绍

    [编者按]本文作者为 Mesosphere 开发大使 Michael Hausenblas,主要介绍配置 Docker 单主机网络的基本知识.文章系国内 ITOM 管理平台 OneAPM 编译呈现. ...

  6. 七、【Docker笔记】Docker中网络基础配置

    一个系统一般都包含多个服务组件,这些大量的服务组件不可能放在同一个容器中,这就需要多个容器之间可以互相通信.Docker提供了两种方式来实现网络服务:映射容器端口到宿主主机.容器互联机制. 一.端口映 ...

  7. docker的网络基础配置

    一.端口映射实现访问容器 当容器中运行一些网络应用,要让外部访问这些应用时,可以通过-P或-p参数来指定端口映射.当使用-P标记时,Docker会随机映射一个49000~49900的端口至容器内部开放 ...

  8. Docker网络基础

    大量的互联网应用服务包括多个服务组件,这往往需要多个容器之间通过网络通信进行相互配合. Docker目前提供了映射容器端口到宿主主机和容器互联机制来为容器提供网络服务. 端口映射实现访问容器: 在启动 ...

  9. linux基础之网络基础配置

    基础命令:ifconfig/route/netstat,ip/ss,nmcli 一.ifconfig/route/netstat相关命令 1.  ifconfig - configure a netw ...

随机推荐

  1. servlet之servlet容器(一)

    1.servlet容器 ·servlet容器为javaweb应用提供运行时环境,负责管理servlet和jsp的生命周期以及管理它们的共享数据 ·servlet容器中的文件目录结构 ·tomcat是一 ...

  2. 第一模块 Python开发入门

    第一章 Python语法基础 变量的定义规范 一.声明变量 name = "Alex" 二.变量的定义规则 变量名只能是字母.数字或下划线的任意组合 变量名的第一个字符不能是数字 ...

  3. Heap Sort - recursion

    Heap Sort  Build a max heap using exsiting array, which is called Heapify Swap root with the last el ...

  4. 【论文阅读】Wing Loss for Robust Facial Landmark Localisation with Convolutional Neural Networks

    Wing Loss for Robust Facial Landmark Localisation with Convolutional Neural Networks 参考 1. 人脸关键点: 2. ...

  5. Spherical CNNs代码配置过程

    ICLR18 best paper: Spherical CNNs 论文链接:https://arxiv.org/abs/1801.10130 GITHUB地址:https://github.com/ ...

  6. scrapy输出的json文件中显示中文

    scrapy用-o filename.json 输出时,会默认使用unicode编码,当内容为中文时,输出的json文件不便于查看,如下图: 可以在setting.py文件中修改默认的输出编码方式,只 ...

  7. Oracle KEEP 分析函数

    Oracle中为了解决子集合中查询最值的问题,提出了KEEP()语法. 典型案列如:在每个部门中找出年龄最小的人中的最高工资. 基本语法结构: MAX(COL2) KEEP (DENSE_RANK F ...

  8. O/R关系的深入理解(转载)

    本文转载自aa8945163: http://aa8945163.iteye.com/blog/859713 什么是O/R Mapping? 广义上,ORM指的是面向对象的对象模型和关系型数据库的数据 ...

  9. cms建站

    1. 搭建php环境 phpnow软件安装(下载地址:  http://www.phpnow.org) 注意如果安装失败,请用以下解决办法: 1.请使用命令提示符(管理员)2.打开后进入PHPnow目 ...

  10. 前端---js02

    主要内容 1.数组 2.字符串 3.Date日期对象 4.内置对象 5.定时器 6.DOM 7.伪数组 内置对象: 1 数组(列表) Array (1) 数组的创建 <script>//字 ...