DOCKER - 技术教程文章

Docker 开发概述

This page lists resources for application developers using Docker. Develop new apps on DockerIf you’re just getting started developing a brand new app on Docker, check out these resources to understand some of the most common patterns for getting the most benefits from Docker.Learn to build an image from a DockerfileUse multistage builds to keep your images leanManage application data using volum...

使用docker-compose 大杀器来部署服务【代码】

我们都听过或者用过 docker,然而使用方式却是仅仅用手动的方式,这样去操作 docker 还是很原始。 好吧,可能在小白的眼中噼里啪啦的对着 term 一顿操作会很拉风,但是高手很不屑!在高手眼里…too young, too low. 因为高手都是自动化的,今天就稍微介绍下自动化工具,也就是大杀器 docker-compose使用docker-compose 大杀器来部署服务 上 先从 docker 说起 docker 简介为什么说 docker 是快速部署 好了, 我们进化到,快速1.0 时...

dockerfile的编写参数【代码】

注意细节 “#”号开头是注释 ,指令不区分大小写,顺序执行FROM 指定基础镜像;注意必须是文件里第一个非注释行 ENV name 值 设置变量,注意没有=号 变量引用 ${name:-chenxi} 假如变量为空chenxi就是变量的默认值 [root@master ~]# echo ${name:-chenxi} chenxiFROM 语法介绍FROM <指定docker镜像名>[:<tag>] 标签不加默认是latestFROM <指定docker镜像名>@哈希码MAINTANIERMAINTANIER #作者的信息LABEL语法LABEL 指定...

Docker 镜像文件的导入和导出【代码】

使用save命令 保存镜像 docker save -o name_by_you.tar exist_images将文件copy到另一台机器使用load命令将镜像文件保存到本地仓库docker load -i name_by_you.tar查看docker images,镜像应该已经被导入原文:https://www.cnblogs.com/leisurelylicht/p/Docker-jing-xiang-wen-jian-de-dao-ru-he-dao-chu.html

Docker常用命令

docker常用命令docker run -i -t ubuntu:15.10 /bin/bash #我们通过 docker 的两个参数 -i -t,让 docker 运行的容器实现"对话"的能力:docker run -d ubuntu:15.10 /bin/sh -c "while true; do echo hello world; sleep 1; done" #使用以下命令创建一个以进程方式运行的容器docker logs 2b1b7a428627 #在宿主主机内使用 docker logs 命令,查看容器内的标准输出:docker stop amazing_cori #停止容器docker ps #查看运行中的窗...

【Docker入门】【代码】【图】

目录Linux容器Docker的优势Docker三大概念安装使用Docker补充知识【Docker入门】 发布文章 "qq_41964425" @ ***所谓DockerDocker最初是dotCloud公司创始人Solomon Hykes在法国期间发起的一个公司内部项目,于2013年3月以Apache2.0授权协议开源,主要项目代码在GitHub上进行维护. Docker使用Google公司推出的GO语言进行开发实现. Docker是Linux容器的一种封装,提供简单易用的容器使用接口,它是最流行的Linux容器解决方案. Docker的...

Docker【图】

基本概念Docker是轻量级的虚拟化技术,容器是一个进程。容器与镜像的关系类似于面向对象编程中的对象与类。虚拟化VM是OS级别,docker是应用级别。镜像(Image)镜像可以用来创建Docker容器容器(Container)容器容器类似进程、集装箱,是独立运行的一个或一组应用,以及他们的运行态环境。仓库(Repository)集中存放镜像文件的场所。核心技术namespace将其它命名空间的东西隐藏,从而为该进程提供它自己独立运行的环境。这使得进程之间...

docker打包项目【图】

nginx镜像制作实战docker容器的主业docker理念里,容器启动时,应当为它指定主业是什么,如nginx容器主业就是nginx代理服务,tomcat容器就是web服务等等1、容器创建时,必须指定主业任务,如不指定,则容器无事可干立即退出。2、在dockerfile打包镜像时,可以使用cmd命令来指定一个默认的主业,如下: 3、既然镜像里是默认主业,即意味着创建容器时,可以覆盖此默认命令,如下 推荐的ENTRYPOINT方式1、镜像本身应该有稳定的主...

VS code配置docker的shell环境【代码】【图】

今天尝试了下使用docker来做虚拟机,几番折腾后终于搞定可以用了,但是想着每次都要在命令行敲半天也太恶心了,所以就找了一下可视化的管理工具首先说下,我的docker主机环境是windows10,用的linux-container第一次我用了网络上大家都推荐的portainer,折腾了一下也是装好了,界面美观 ,操作流畅很是喜欢----但是!在docker里装上ubuntu虚拟机后,尴尬的发现,装了vim不能用,一直显示空白,退也退不出,就像这样看了github上的is...

docker: Error response from daemon: Get https://registry-1.docker.io/v2/: net/http: request canceled【代码】

故障描述:[root@docker01 ~]# docker run centos docker: Error response from daemon: Get https://registry-1.docker.io/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers). See ‘docker run --help‘. 解决方案:修改docker镜像源: docker默认的源为国外官方源,下载速度较慢,可改为国内,加速 方案一修改或新增 /etc/docker/daemon.json[root@docker0...

CentOs安装Docker【代码】

CentOs安装DockerDocker官方建议在Ubuntu中安装,因为Docker是基于Ubuntu发布的,而且一般Docker出现的问题Ubuntu是最先更新或者打补丁的。在很多版本的CentOS中是不支持更新最新的一些补丁包的。但由于我们学习的环境都使用的是CentOS,因此这里我们将Docker安装到CentOS上。注意:这里建议安装在CentOS7.x以上的版本!因为在CentOS6.x的版本中,安装前需要安装其他很多的环境而且Docker很多补丁不支持更新。1、步骤第一步:更新y...

Docker仓库【代码】

本地镜像仓库: 本地镜像仓库创建: yum install -y docker-registry 默认使用https实际安装: docker-distribution x86_64 2.6.2-2.git48294d9.el7 主配置文件: /etc/docker-distribution/registry/config.yml 镜像存放位置: /var/lib/registry 主程序: /usr/bin/registry 服务脚本: /usr/lib/systemd/system/docker-distribution.service监听的5000端口!打标方式: docker tag 172.20.23.31/nginxbash/nginx-base:v...

Docker 不能被外网正常访问

问题描述:1. docker容器不能 被外部网络正常访问2. docker所在服务器可以正常访问3. docker启动时 报 ip_forward 错误 排查1. 防火墙是否开发端口访问 (开通一个端口被访问 iptables -I INPUT -p tcp --dport 20000 -j ACCEPT)2. 针对第三个问题描述: 1) cat /proc/sys/net/ipv4/ip_forward 0 2) echo 1 > /proc/sys/net/ipv4/ip_forward原文:http://www.cnblogs.com/youlixishi/p/5819847.html

『高级篇』docker之服务编排三大平台扬帆起航(21)【图】

>原创文章,欢迎转载。转载请注明:转载自IT人故事会,谢谢!>原文链接地址:『高级篇』docker之服务编排三大平台扬帆起航(21)之前的博客跟着我进度的老铁,已经通过java和python写好了微服务,引入了docker,build了镜像,而且还有了自己的镜像仓库。下面可以着手部署了。服务编排docker是不类似传统的服务,它需要一款服务编排的框架。Mesos最早出现的,早在2013年就发布了第一个版本kubernetesgoogle晚于MesosDocker Swarm 20...

Docker 常用命令

docker exec -it gitlab /bin/bashdocker restart <container_id>docker run --detach --hostname git.imebo.com --publish 8888:80 --publish 10443:443 --publish 10022:22 --name gitlab_web --restart always --volume /home/gitlab/config:/etc/gitlab --volume /home/gitlab/logs:/var/log/gitlab --volume /home/gitlab/data:/var/opt/gitlab docker.io/twang2218/gitlab-ce-zhdocker image pull alpine:latestdocker pull ...

docker 容器资源限制

docker实例资源限制主要是通过linux cgroups去实现的,cgroups可以限制、记录、隔离进程组所使用的物理资源,包括:CPU、memory、IO等。在生产上,肯定是要限制资源的。通过docker run命令加参数来实现,比如-m,--cpu-shares,具体参数请查阅docker命令。以内存为例,限制资源的话,一旦该容器使用内存到达阈值,就会报OOM;如果不限制,那么就是持续吃掉宿主机的内存,直到宿主机内存占用满为止。本文出自 “清风柳絮” 博客,请务...

基于kubernetes构建Docker集群环境实战

kubernetes是google公司基于docker所做的一个分布式集群,有以下主件组成etcd: 高可用存储共享配置和服务发现,作为与minion机器上的flannel配套使用,作用是使每台 minion上运行的docker拥有不同的ip段,最终目的是使不同minion上正在运行的docker containner都有一个与别的任意一个containner(别的minion上运行的docker containner)不一样的IP地址。flannel: 网络结构支持kube-apiserver: 不论通过kubectl还是使用remote api 直...

docker7

以下为安装1.7.1的版本yum install -y epel-releaseyum install docker-io# 安装docker# 配置文件 /etc/sysconfig/dockerchkconfig dockeron# 加入开机启动service docker start# 启动docker服务# 基本信息查看dockerversion# 查看docker的版本号,包括客户端、服务端、依赖的Go等docker info<!-- 以下的命令 可以参考网址教程 http://www.docker.org.cn/book/docker/what-is-docker-16.html --># 根据name全文搜索容器 docker sea...

docker入门实战4 数据管理、网络配置、dockerfile

六、数据管理用户在使用docker的过程中,往往需要查看容器内应用产生的数据,或者需要把容器内的数据进行备份,甚至多个容器之间进行数据的共享,这必然涉及容器的数据管理操作。容器中管理数据主要有两种方式:1)数据卷(Data Volumes)2)数据卷容器(Data Volume Dontainers)本章介绍在容器内创建数据卷,并且把本地的目录或文件挂载到容器内的数据卷中,使用数据卷容器在容器和主机、容器和容器之间共享数据,并实现数据的备...

在docker容器中安装软件,并重新生成镜像【代码】

原文地址:https://www.cnblogs.com/fanlong0212/p/12297496.html1、首先应该进入已经运行的容器:docker exec -it [容器名或容器ID] /bin/bash2、在容器里查看镜像所使用的的Linux版本1cat /etc/issue我这边下载的一个容器里面运行的是Welcome to Alpine Linux 3.10 的版本,Alpine 软件管理器使用的是apkCentos 软件管理器使用的是yumubuntu 软件管理器使用的是apt-get3、更新apk管理仓库1apk update4、安装软件12apk add 工具名...

docker命令整理【代码】【图】

容器生命周期管理run 创建一个新的容器start/stop/restart 运行一个容器killrmpausecreateexec容器生命周期管理docker run创建一个新的容器 语法:docker run [OPTIONS] IMAGE [COMMAND] [ARG...] Options:-a stdin: 指定标准输入输出内容类型,可选 STDIN/STDOUT/STDERR 三项; -d: 后台运行容器,并返回容器ID; -i: 以交互模式运行容器,通常与 -t 同时使用; -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用; -P: 随...

docker2【代码】

部署应用映射外部目录# 部署redis,把配置文件和数据目录映射出来 -1 mkdir /reids /redis/conf /redis/data -2 vim /redis/conf/redis.conf# 配置文件bind 0.0.0.0daemonize NOprotected-mode norequirepass 123456 # 这个是设置密码.在外部连接的时候就需要输入密码-3 创建并运行容器docker run -p 6378:6379 --name redis_6379 -v /redis/conf/redis.conf:/etc/redis/redis.conf -v /redis/data:/data -di redis redis-server /e...

docker-compose文件【代码】

docker-compose version: "3" services:user-dashboard:build: .volumes:- .:/data/code/- /proc:/writable-procports:- "8891:8891"networks:- walkoff_networkrestart: alwayscontainer_name: new_user-dashboardnetworks:walkoff_network:external: true DockerfileFROM python:3.6 # Add ADD deploy/sources.list /etc/apt/sources.list ADD deploy/secrets /home/ # Packages #RUN apt-get update # Language #RUN apt-get i...

不通过SSH接入Docker

翻译自:http://www.sebastien-han.fr/blog/2014/01/27/access-a-container-without-ssh/先运行一个简单的memcache容器:$sudo docker run -d -p 11211 bacongobbler/memcached memcached /usr/bin/memcached -m 64 -p 11211 -u memcache -l 0.0.0.0$ sudo docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 0a9856723f90 ...

centos7安装docker-ce出现的问题【代码】【图】

我在安装docker-ce时遇到了下面问题最后发现,container-selinux版本过低解决的方案:wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo yum install epel-release -y yum install container-selinux -y安装好最新版contain-selinux就好了

使用 docker buildx 构建多 cpu 架构镜像 - 环境配置篇【代码】【图】

使用 docker buildx 实现多平台编译 docker registry api v2 支持多 CPU 架构镜像.同时 harbor v2 也实现了 docker registry api v2 的支持.实现之后, 将不再有 cpu 架构困扰, 一个 docker pull image:tag 将自动适配可适配的平台。真正做到海纳百川,一骑当千。0x01 准备docker 开启实验模式buildx 插件qemu 模拟器Linux kernel >= 4.8linux 系统内核由于 binfmt_misc 机制开启需要依赖 Linux kernel >= 4.8 。因此,在对 linu...

docker,来自大佬分享,仅存档。【代码】【图】

官方镜像仓库https://hub.docker.com/docker官方仓库https://www.docker.com/get-started第一章 docker介绍1.什么是容器容器是隔离的环境中运行的一个进程,如果进程结束,容器就会停止,容器的隔离环境,拥有自己的ip地址,系统文件,主机名,进程管理2:容器和虚拟机的区别1.文字描述虚拟机: 硬件cpu支持(vt虚拟化),模拟计算硬件,走正常的开机启动 bios开机自检--根据bios启动项--读取硬盘第一个扇区grub,uefi, centos7, 加载内核...

docker for mac 创建私有仓库【代码】【图】

拉取镜像docker pull registry运行registryrun -d -p 5000:5000 -v /Users/huangenai/docker/registry:/var/lib/registry registry-d后台运行 -p指定端口 -v把registry的镜像路径/var/lib/registry映射到本机的Users/huangenai/docker/registry//查看运行容器 docker ps //进入容器 22da3fb569ea是容器id 在上一步骤中获得sudo docker attach 22da3fb569ea本地仓库非安全配置 user/<username>/.docker/daemon.jsoncat .docker/...

ubuntu安装docker

Ubuntu 14.04及以上版本Ubuntu 14.04版本官方软件源中已经自带了Docker包,可以直接安装$sudo apt-get update$sudo apt-get install -y docker.io$sudo ln -sf /usr/bin/docker.io /usr/local/bin/docker$sudo sed -i ‘$scomplete -F _docker docker‘ /ete/bash_completion.d/docker.io以上流程使用ubuntu 14.04系统默认自带的docker.io安装包安装Docker,这样安装的版本相对较旧。另外我们也可以通过下面的方法从Docker官方源安...

利用Ansible部署运行Apache(http)的Docker容器【代码】【图】

在自动化运维领域,除了saltstack,还有ansible这个批量安装部署工具,在写具体内容先,先谈谈我用过两个工具后的感想。 saltstack是C/S框架,要在客户端装软件,并且启动服务才能进行管理,ansible是通过ssh连接到客户端的,也就是说必须把密钥传给客户端才能进行管理,虽然可以关闭这个验证方式,但是生产环境中肯定是不能关闭的,从这一点看,还是ansible更容易配置,完全可以用脚本循环遍历所有主机来添加密钥。 使用方面,命...