端口镜像

Docker实战-编写Dockerfile

会有一股神秘感。 提交于 2019-12-07 14:44:46
一、编译镜像 1. 编译镜像 Dockerfile类似于Makfile,用户使用 docker build 就可以编译镜像,使用该命令可以设置编译镜像时使用的CPU数量、内存大小、文件路径等 语法:docker build [OPTIONS] PATH| URL| - 常见选项: -t 设置镜像的名称和TAG,格式为name:tag -f Dockerfile的名称,默认为PATH/Dockerfile 例子:docker build -f ~/php.Dockerfile . 注意:PATH是编译镜像使用的工作目录,Docker Daemon在编译开始时,会扫描PATH中的所有文件,可以在编译目录中加入.dockerignore过滤不需要的文件 Docker Daemon从Dockerfile中顺序读取指令,生成一个临时容器,在容器中执行指令,容器编译成功后会提交作为镜像层加入最终镜像,为了加快编译过程,Docker Daemon采用了缓存机制,如果在缓存中找到了需要的中间镜像则直接使用该镜像而不生成临时容器(编译时可以使用选项–no-cache选择不使用缓存) 2. dockerignore文件 编译开始前,Docker Daemon会读取编译目录中的.dockerignore文件,忽略其中的文件和目录,在其中可以使用通配符(?代表一个字符,*代表零个或任意个字符)

[转载] docker终极指南

二次信任 提交于 2019-12-07 14:04:32
原文: http://dockerone.com/article/133 讲的非常清楚的一篇docker入门材料, 并且作者附带了详细的连接. Docker终极指南 【编者的话】Docker入门的好文章,之前在微博上就有很多人推荐,也是2015年的新文章,DockerOne作了翻译。本教程有三个目标:说明Docker解决的问题、说明它如何解决这个问题、以及说明它使用了哪些技术来解决这个问题,这不是一篇教你怎么运行安装Docker的教程。 Docker是一个相对较新且发展非常快速的项目,可用来创建非常轻量的“虚拟机”。注意这里的引号非常重要,Docker创建的并非真正的虚拟机,而更像是打了激素的chroot,嗯,是大量的激素。 在我们继续之前,我先说下,截至目前(2015年1月4日)为止, Docker只能在Linux上工作 ,暂不支持Windows或OSX(译者注:不直接支持)。我稍后会讲到Docker的架构,你会明白其中的原因。所以,如果想在非Linux平台上使用Docker,你需要在虚拟机里运行Linux。 本教程有三个目标:说明Docker解决的问题、说明它如何解决这个问题、以及说明它使用了哪些技术来解决这个问题。这不是一篇教你怎么运行安装Docker的教程, Docker 此类 教程 已经 有 很多 ,包括 Docker作者的在线互动教程 (译者注

rancher搭建+基本操作+web应用部署

ぃ、小莉子 提交于 2019-12-07 06:01:56
Rancher搭建 首先rancher需要安装了docker的linux环境,我的系统版本为 在docker的基础上启动rancher服务器,Rancher 服务器是一个 Docker image,所以其软件本身不需要安装,只需要执行 Docker 命令下载并且成功运行 Docker 服务器镜像即可。 执行命令 sudo docker run -d --restart=always -p 8080:8080 rancher/server 启动容器并指定端口,如果没有rancher/server镜像会自动下载。执行完成后查看镜像与容器运行情况: 以上步骤完成后,查看本机的ip地址,我的地址为192.1688.1.109,在浏览器输入 http://ip:8080/ ,登录到rancher官网,为安全起见,设置管理账户 然后进行添加主机操作,根据网站指引操作,生成一条命令,在docker中运行 $ sudo docker run --rm --privileged -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/rancher:/var/lib/rancher rancher/agent:v1.2.5 http://192.168.1.109:8080/v1/scripts/9F78F0DF10BCF4216AC7

Linux通过 Docker 可以托管 .NET Core啦!

感情迁移 提交于 2019-12-06 21:10:50
我是首次接触 Docker 并且距离成为一名 Linux 高手还有很远的一段路程。因此,这里的很多想法是来自一个新手。 内容 安装按照 https://www.microsoft.com/net/core 上的介绍在你的电脑上安装 .NET Core 。这将会同时在 Windows 上安装 dotnet 命令行工具以及最新的 Visual Studio 工具。 源代码 你可以直接到 GitHub 上找最到最新完整的源代码。 转换到 .NET CORE 1.0 自然地,当我考虑如何把 API 从 .NET Core RC1 升级到 .NET Core 1.0 时想到的第一个求助的地方就是谷歌搜索。我是按照下面这两条非常全面的指导来进行升级的: 从 DNX 迁移到 .NET Core CLI 从 ASP.NET 5 RC1 迁移到 ASP.NET Core 1.0 当你迁移代码的时候,我建议仔细阅读这两篇指导,因为我在没有阅读第一篇指导的情况下又尝试浏览第二篇,结果感到非常迷惑和沮丧。 我不想描述细节上的改变因为你可以看 GitHub 上的提交。这儿是我所作改变的总结: 更新 global.json 和project.json 上的版本号 删除 project.json上的废弃章节 使用轻型 ControllerBase 而不是 Controller, 因为我不需要与 MVC

docker操作笔记

Deadly 提交于 2019-12-06 14:16:00
1、查看docker版本: docker info /docker version 2、使用 docker run 命令来在容器内运行一个应用程序。如输出helloworld:docker run ubuntu:15.10 /bin/echo "Hello world" 各个参数解析:   docker: Docker 的二进制执行文件。   run:与前面的 docker 组合来运行一个容器。   ubuntu:15.10指定要运行的镜像,Docker首先从本地主机上查找镜像是否存在,如果不存在,Docker 就会从镜像仓库 Docker Hub 下载公共镜像。    /bin/echo "Hello world": 在启动的容器里执行的命令    以上命令完整的意思可以解释为:Docker 以 ubuntu15.10 镜像创建一个新容器,然后在容器里执行 bin/echo "Hello world",然后输出结果。 3、运行交互式容器 命令:docker run -i -t ubuntu:15.10 /bin/bash 参数解析: -t:在新容器内指定一个伪终端或终端。 -i:允许你对容器内的标准输入 (STDIN) 进        运行exit命令或者使用CTRL+D来退出容器 4、启动容器(后台模式) 查看是否有容器在运行:docker ps -d: 后台运行容器

Docker 学习笔记

十年热恋 提交于 2019-12-06 02:05:56
Docker练习教程 一个集成UNIX小程序的docker镜像:busybox github docker部署webapp;后台运行,暴露端口 [外:内] docker镜像:版本指定 镜像分类:基础和子镜像,官方和用户镜像 创建自定义的镜像: flask应用程序 通过Dockerfile构建自己的镜像 Docker推送到云端共享给他人,使用公共Hub如 Docker官方Hub account: fubinh , 亚马逊AWS 或者 自己创建私有镜像库 多容器运行应用, Python-Flask和Elasticsearch示例 docker网路:桥接,创建自己的网络,隔离网络 Docker Compose Docker Machine 在自己的计算机,云提供商和您自己的数据中心内创建Docker主机 Docker Compose :用于 定义和运行多容器Docker应用程序 的工具 Docker Swarm - Docker的本机群集解决方案 Kubernetes - Kubernetes是一个开源系统,用于自动化容器化应用程序的部署,扩展和管理。 Awesome Docker Docker课堂 docker监控工具:lazydocker ## 前台运行docker pull lazydockerdocker run -it -v /var/run/docker.sock:/var

docker基础知识

浪子不回头ぞ 提交于 2019-12-05 22:11:33
一、认识 1.什么是docker Docker 是一个开源项目,诞生于 2013 年初,最初是 dotCloud 公司内部的一个业余项目。它基于 Google 公司推出的 Go 语言实现。 项目后来加入了 Linux 基金会,遵从了 Apache 2.0 协议,项目代码在 GitHub 上进行维护。 Docker 自开源后受到广泛的关注和讨论,以至于dotCloud 公司后来都改名为 Docker Inc。Redhat已经在其 RHEL6.5 中集中支持 Docker;Google 也在其 PaaS 产品中广泛应用。 Docker的主要目标: 通过对应用组件的封装、分发、部署、运行等生命周期的管理,达到应用级别的一次封装,到处运行。 小贴士:这里的应用组件,可以是WEB应用,也可以是一套数据库服务,甚至可以是一个操作系统编译器 2.为什么使用docker Docker容器虚拟化的优点: 环境隔离; 通过cgroups和namesapce进行实现资源隔离,实现一台机器运行多个容器互不影响。 更快速的交付部署; 使用docker,开发人员可以利用镜像快速构建一套标准的研发环境;开发完成后,测试和运维人员可以直接通过使用相同的环境来部署代码。Docker可以快速创建和删除容器,实现快速迭代,大量节约开发、测试、部署的时间。并且,各个步骤都有明确的配置和操作,整个过程全程课件

Docker基础与实战,看这一篇就够了

对着背影说爱祢 提交于 2019-12-05 11:05:07
docker 基础 什么是Docker Docker 使用 Google 公司推出的 Go 语言 进行开发实现,基于 Linux 内核的 cgroup , namespace ,以及 AUFS 类的 Union FS 等技术,对进程进行封装隔离,属于 操作系统层面的虚拟化技术。由于隔离的进程独立于宿主和其它的隔离的进程,因此也称其为容器。 Docker 在容器的基础上,进行了进一步的封装,从文件系统、网络互联到进程隔离等等,极大的简化了容器的创建和维护。使得 Docker 技术比虚拟机技术更为轻便、快捷。 记住最重要的一点,Dokcer实际是宿主机的一个普通的进程,这也是Dokcer与传统虚拟化技术的最大不同。 为什么要使用Docker 使用Docker最重要的一点就是Docker能保证运行环境的一致性,不会出现开发、测试、生产由于环境配置不一致导致的各种问题,一次配置多次运行。使用Docker,可更快地打包、测试以及部署应用程序,并可减少从编写到部署运行代码的周期。 docker 安装 Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker 。 uname -r 更新yum,升级到最新版本 yum update 卸载老版本的docker(若有) yum remove docker docker

docker--镜像制作

不想你离开。 提交于 2019-12-05 07:06:53
7 docker 镜像制作 docker官方和个人发布的镜像由于版本等各种原因,漏洞较多,已统计Docker Hub超过 30%的官方镜像包含高危漏洞。此外,由于网络等原因也会造成docker pull下载镜像的 速度很慢。基于这种情况,我们可以手动定制docker系统镜像。构建镜像的方式有两 种: 使用 docker commit命令 使用 docker build和Dockerfile文件 7.1 docker commit 7.1.1 制作步骤 docker commit:提交一个正在运行的容器为一个新的镜像本例:制作一个tomcat镜像,制作步骤:1、拉取一个基础镜像(其始就是OS)docker pull centos2、创建一个交互式容器docker run ‐it ‐‐name=mycentos centos:latestdocker run -it --name mycentos centos /bin/bash3、软件上传:将宿主机Tomact、jdk上传到容器中yum -y install lrzszdocker cp apache-tomcat-7.0.47.tar.gz mycentos:/root/docker cp jdk-8u161-linux-x64.tar.gz mycentos:/root/4、在容器中安装jdk (yum install java

docker基本操作

丶灬走出姿态 提交于 2019-12-05 03:48:41
docker基本操作 Docker Hello World Docker 允许你在容器内运行程序,使用docker run命令在容器内运行一个应用程序 输出Hello world docker run ubuntu:15.10 /bin/echo "Hello World" 参数解析 docker :Docker的二进制执行文件 run :与前面的docker组合来运行一个容器 ubuntu:15.10:指定要运行的镜像,Docker首先从本地主机上查找镜像是否存在,如果不存在,Docker就会从镜像仓库Docker Hub下载公共镜像 /bin/echo “Hello world”:在启动的容器内执行的命令 运行交互式的容器 docker run -it ubuntu:15.10 /bin/bash 参数解析 -t :在新容器内指定一个伪终端或终端 -i :允许你对容器内的标准(STDIN)进行交互 我们可以通过运行exit命令或者使用CTRL+D来退出容器 启动容器(后台模式) docker run -d ubuntu:15.10 /bin/sh -c "while true;do echo hello world;sleep 1;done" 在容器内使用docker logs命令,查看容器内的标准输出 docker logs <容器id> 停止容器 docker stop