windows好难安装配置docker windows,。

第1章 课程简介
第2章 实践第一步
第3章 Dockerfile介绍
第4章 存储
第5章 镜像仓库
第6章 多容器app
第7章 总结
下一节课程: docker架构介绍与实战
3 秒后播放下一节
请输入问题内容...
请输入笔记内容...
你发的评论可能会是问题?是否将他发到问答中
Copyright (C) 2018 imooc.com All Rights Reserved | 京ICP备 号-2
本次提问将花费2个积分
你的积分不足,无法发表
本次提问将花费2个积分
继续发表请点击 "确定"在Windows上如何安装Docker的代码实例分享
原创
423
下载Docker for Windows稳定版准备安装Docker for Windows安装前请保障 Windows10 版本大于或等于 1703,os版本大于或等于 15063我在版本1607下安装就会有找不到引用汇编文件的错误必须启用Hyper-V软件包才能使Docker for Windows工作。如果您的系统不满足这些要求,您可以安装Docker Toolbox,它使用Oracle Virtual Box而不是Hyper-V。在 Windows 10 上安装 Hyper-V 网址安装Docker for Windows双击InstallDocker.msi以运行安装程序。检查Docker打开PowerShell,输入以下代码PS C:\Users\Docker& docker --version
Docker version 17.03.0-ce, build 60ccb22
PS C:\Users\Docker& docker-compose --version
docker-compose version 1.11.2, build dfed245
PS C:\Users\Docker& docker-machine --version
docker-machine version 0.10.0, build 76ed2a6运行docker run hello-world来测试从Docker Hub拉一个镜像并启动一个容器。PS C:\Users\jdoe& docker run hello-worldHello from Docker. This message shows that your installation appears
to be working correctly.
To generate this message, Docker took the following steps:
The Docker client contacted the Docker daemon.
The Docker daemon pulled the &hello-world& image from the Docker Hub.
The Docker daemon created a new container from that image which runs the executable that produces the output you are currently
The Docker daemon streamed that output to the Docker client, which sent it to your terminal.尝试更有野心的东西,并使用此命令运行Ubuntu容器。这将下载ubuntu容器镜像并启动它。以下是在powerhell中运行此命令的输出。PS C:Usersjdoe& docker run -it ubuntu bash
Unable to find image 'ubuntu:latest' locally latest: Pulling from
library/ubuntu 5a132a7e7af1: Pull complete fdc: Pull complete
28a2f68d1120: Pull complete a3ed95caeb02: Pull complete Digest:
sha256:4e85ebe01d056bbbac22bdbe3c78d21e55ee235fc6802d
Status: Downloaded newer image for ubuntu:latest使用docker开启nginx服务器PS C:\Users\jdoe& docker run -d -p 80:80 --name webserver nginxUnable to find image 'nginx:latest' locally latest: Pulling from
library/nginx
fdd5d7827f33: Pull complete a3ed95caeb02: Pull complete 716f7a5f3082:
Pull complete 7b10f03a0309: Pull complete Digest:
sha256:f6ad324c4c9f3f183e1b69e9e0ff12debeb7ac33e0de3e
Status: Downloaded newer image for nginx:latest
dfe13c68b3b86f0df02be4897184cbf7a8b4d5caf1c3c5bd3fc267f
访问http://localhost/以显示nginx起始页。使用 docker ps 命令查看容器列表使用 docker images 命令查看镜像列表加速器在系统右下角托盘图标内右键菜单选择 Settings,打开配置窗口后左侧导航菜单选择 Docker Daemon。编辑窗口内的JSON串,填写如阿里云、DaoCloud之类的加速器地址,如: {
&registry-mirrors&: [
&https://sr5arhkn.mirror.aliyuncs.com&,
&http://14d216f4.m.daocloud.io&
&insecure-registries&: []
}以上就是在Windows上如何安装Docker的代码实例分享的详细内容,更多请关注php中文网其它相关文章!
江湖传言:PHP是世界上最好的编程语言。真的是这样吗?这个梗究竟是从哪来的?学会本课程,你就会明白了。
PHP中文网出品的PHP入门系统教学视频,完全从初学者的角度出发,绝不玩虚的,一切以实用、有用...
ThinkPHP是国内最流行的中文PHP开发框架,也是您Web项目的最佳选择。《php.cn独孤九贱(5)-ThinkPHP5视频教程》课程以ThinkPHP5最新版本为例,从最基本的框架常识开始,将...
本套教程,以一个真实的学校教学管理系统为案例,手把手教会您如何在一张白纸上,从零开始,一步一步的用ThinkPHP5框架快速开发出一个商业项目。
所有计算机语言的学习都要从基础开始,《PHP入门视频教程之一周学会PHP》不仅是PHP的基础部分更主要的是PHP语言的核心技术,是学习PHP必须掌握的内容,任何PHP项目的实现都离不开这部分的内容,通...
《php.cn原创html5视频教程》课程特色:php中文网原创幽默段子系列课程,以恶搞,段子为主题风格的php视频教程!轻松的教学风格,简短的教学模式,让同学们在不知不觉中,学会了HTML知识。
本课以最新版ThinkPHP5.0.10为基础进行开发,全程实录一个完整企业点,从后台到前台,从控制器到路由的全套完整教程,不论是你是新人,还是有一定开发经验的程序员,都可以从中学到实用的知识~~
ThinkPHP是一个快速、开源的轻量级国产PHP开发框架,是业内最流行的PHP框架之一。本课程以博客系统为例,讲述如何使用TP实战开发,从中学习Thinkphp的实践应用。模版下载地址:http:/...
本课程是php实战开发课程,以爱奇艺电影网站为蓝本从零开发一个自己的网站。目的是让大家了解真实项目的架构及开发过程
本课以一个极简的PHP开发框架为案例,向您展示了一个PHP框架应该具有的基本功能,以及具体的实现方法,让您快速对PHP开发框架的底层实现有一个清楚的认识,为以后学习其实的开发框架打下坚实的基础。
javascript是运行在浏览器上的脚本语言,连续多年,被评为全球最受欢迎的编程语言。是前端开发必备三大法器中,最具杀伤力。如果前端开发是降龙十八掌,好么javascript就是第18掌:亢龙有悔。...
本站9月直播课已经结束,本套教程是直播实录,没有报上名或者漏听学员福利来了,赶紧看看吧,说不定这里就有你的菜
轻松明快,简洁生动,让你快速走入HTML5的世界,体会语义化开发的魅力
JavaScript能够称得上是史上使用最广泛的编程语言,也是前端开发必须掌握的三技能之一:描述网页内容的HTML、描述网页样式的CSS以及描述网页行为的JavaScript。本章节将帮助大家迅速掌握...
《php用户注册登录系统》主要介绍网站的登录注册功能,我们会从最简单的实现登录注册功能开始,增加验证码,cookie验证等,丰富网站的登录注册功能
Bootstrap 是最受欢迎的 HTML、CSS 和 JS 框架,用于开发响应式布局、移动设备优先的 WEB 项目。为所有开发者、所有应用场景而设计,它让前端开发更快速、简单,所有开发者都能快速上手...
《PHP学生管理系统视频教程》主要给大家讲解了HTML,PHP,MySQL之间的相互协作,实现动态的网页显示和获取数据.
《php.cn独孤九贱(2)-css视频教程》课程特色:php中文网原创幽默段子系列课程,以恶搞,段子为主题风格的php视频教程!轻松的教学风格,简短的教学模式,让同学们在不知不觉中,学会了CSS知识...
《弹指间学会HTML视频教程》从最基本的概念开始讲起,步步深入,带领大家学习HTML,了解各种常用标签的意义以及基本用法,学习HTML知识为以后的学习打下基础
jQuery是一个快速、简洁的JavaScript框架。设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。它封装JavaScript常用的功能代码,提供一种简便的...
《最新微信小程序开发视频教程》本节课程是由微趋道录制,讲述了如何申请一个微信小程序,以及开发中需要使用哪些工具,和需要注意哪些等。
文章总浏览数博客分类:
首先, 在window 7 64位系统上安装virtualbox: http://download.virtualbox.org/virtualbox/5.1.4/VirtualBox-5.1.4-110228-Win.exe. 笔者更喜欢Vmware, 当然是特别版的, 网上到处都能找得到. 然后, 在virtualbox或者vmware中安装32位ubuntu: http://releases.ubuntu.com/14.04/ubuntu-14.04.5-desktop-i386.iso.torrent.
安装docker, 同时会自动安装git.
sudo apt-get install docker.io
把当前用户加入docker组. 笔者的当前登录用户是rickg.
sudo usermod -aG docker "rickg"
此时, 重启虚拟机.
下载32位的ubuntu镜像: http://openvz.org/Download/template/precreated
下载完成后, terminal进入下载目录. 执行命令:
sudo cat ubuntu-14.04-x86-minimal.tar.gz | docker import - ubuntu:latest
如果你运气足够好, 到这里为止没有遇到各种乱七八糟的问题, 那么恭喜你, 成功了. 如果git没有安装成功, 则单独安装git: sudo apt-get install git.
此时, 可以查看下image.
sudo docker images
最后, 执行docker run命令.
sudo docker run -i -t ubuntu:latest /bin/bash
浏览: 23297 次
来自: 成都
createJackson2JsonRedisSerializ ...
农村丶码农 写道
请把调调符加上,不然我不会唱乱写的哈,也没 ...
请把调调符加上,不然我不会唱
(window.slotbydup=window.slotbydup || []).push({
id: '4773203',
container: s,
size: '200,200',
display: 'inlay-fix'Docker 最初的2小时(Docker从入门到入门)
作者:宋宝华
版权声明:本文为博主原创文章,未经博主允许不得转载。
最初的2小时,你会爱上Docker,对原理和使用流程有个最基本的理解,避免满世界无头苍蝇式找资料。本人反对暴风骤雨式多管齐下狂轰滥炸的学习方式,提倡迭代学习法,就是先知道怎么玩,有个感性认识,再深入学习高级用法,深层原理,一轮轮迭代。坚决反对一上来就搞几百页厚的东西把人脑子弄乱。Docker是什么?KVM, Virtualbox, Vmware是虚拟出机器,让每个实例看到一个单独的机器;而Docker是虚拟出操作系统,实现应用之间的隔离,让各个应用觉得自己有一个自己的操作系统,而且彼此之间隔离。假设没有Docker,然后有进程1和进程2,它们的运行将类似下图,进程1和进程2共享kernel,它们是同一OS下2个进程,因此必须拥有不同PID,但是又共享网卡,共享IP地址,看到一样的根文件系统(不chroot的情况下)等,可以用Linux IPC手段进程间通信。
有Docker的情况下,假设进程1和进程2运行于不同的容器,那么进程1和进程2都觉得自己和对方没有半毛钱关系,都觉得自己拥有自己的根文件系统,自己的网卡等,然后进程1和进程2的PID还可以一样,比如假设2个都是100。但是,此100非彼100。
Virtualbox等虚拟机的思路则完全不一样,如果进程1和进程2运行于不同的虚拟机,则操作系统都是双份的,它们感觉自己在不同的虚拟电脑上面跑。
由于可见,Docker达到了类似虚拟机的效果,但是又没有虚拟机的开销,它虚拟的层次更加高。Docker不虚拟机器,仅仅虚拟应用的运行环境。为什么Docker也可以“虚拟化”?虚拟化,本质上一种虚幻,给你一种幻觉,让你觉得拥有的很多甚至拥有全世界,哪怕你实际是一只蝼蚁。经过本人多年研究,虚拟化的技术分为2种,一种是虚拟一个世界,第二个是虚拟一个氛围。比如我们在现实生活里面是个屌丝,但是在虚拟人生的游戏里面,我们可以是王思聪++,集美貌智慧财富正义于一生。虚拟人生的游戏,构建一个整个的新世界,这个世界,人人有房住,天下没有贼。那么这个就是硬件都变了,你的内核都变了。这个是Virtualbox,KVM这种虚拟出一个新世界的思路。虚拟一个氛围,是Docker的做法。例如贵公司的Linux部门以前只有3,4个工程师,然后有一个manager,后来有30个人了,你就可以分什么内核组、驱动组、应用组等更多的组,然后又多出几个manager。这种组,类似于名称空间,在每一个单独名称空间的manager,都觉得自己是个manager,于是他会爽那么一点点。最开始是这样的:
后来是这样的:
如果这样还不够,还可以搞声卡驱动组manager,网卡驱动组manager,反正可以不停地搞。大家在各自的Container里面占山为王。Docker就是这样的名称空间让各自在同样的Linux平台上面各自暗爽,装到你自己的容器里面爽。安装Docker如果是Windows主机,可以下载docker-toolbox一路安装,安装过程中如果提示什么错,可以把360等类似软件关闭。Windows安装好Docker后,使用Docker Quickstart Terminal运行。
如果是Ubuntu,可以按照网页进行安装。最简单的Ubuntu 16.04就是命令:sudo apt-get update&& apt-get install docker。Ubuntu安装Docker后,可以把当前用户加到Docker用户组以便当前用户也有权限操作Docker client和host之间的通信socket(之后请重启Docker相关服务):sudo usermod -aG docker $USER为了装逼需要,我们在Docker Hub网页注册一个用户名,我注册的用户名是21cnbao。这样以后,就可以自己提交自己的image了。 Docker的架构Docker中可能涉及到3个机器或者更多机器,一个运行Docker命令的client, 一个包含images并以容器(container)形式运行image的主机,一个Docker的images仓库。client与Docker host上面的Docker daemon通信。当然Docker client和host可以运行于一台机器(我们做实验的时候是一台),默认的Docker仓库是Docker Hub。
一般的流程中,client发pull命令从仓库把image拉到Docker host,然后通过run命令指挥image到host上面弄一个container来跑这个image。当然也可以是相反的流程,client 通过build命令在host上面创建一个自己的image,然后通过push命令把image推到仓库。之后这个image可以被别的人或者自己pull。image到底是个什么鬼?Docker镜像是一个特殊的文件系统,提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的一些配置参数(如匿名卷、环境变量、用户等)。image为特定目的而生,比如弄了个nginx的image后,这个image就把nginx的东西包罗万象了,无论是张三、王五、六麻子还是七癞子,无论它是什么电脑,什么操作系统,只要支持Docker,它把这个nginx的image下载下来后,拿Docker run命令就可以弄容器跑nginx了。这样,用户就不用装nginx以及它依赖的一切包了(通常装一个软件弄依赖也能把你弄地烦躁死了)。这样看起来,Docker实在是居家旅行,杀人越货之必备良器也!镜像构建时,会一层层叠加,前一层是后一层的基础。
每一层构建完就不会再发生改变,后一层上的任何改变只发生在自己这一层。比如,删除前一层文件的操作,实际不是真的删除前一层的文件,而是仅在当前层标记为该文件已删除。所以这个很类似Git里面这一次提交相对于上一次提交的diff:$git diff
layout/book_index_template.html
text/05_Installing_Git/0_Source.markdown
text/05_Installing_Git/1_Linux.markdown
17 +++++++
text/05_Installing_Git/2_Mac_104.markdown
text/05_Installing_Git/3_Mac_105.markdown
text/05_Installing_Git/4_Windows.markdown
.../1_Getting_a_Git_Repo.markdown
.../0_Comparing_Commits_Git_Diff.markdown
45 +++++++++++++++++++-
.../0_Hosting_Git_gitweb_repoorcz_github.markdown |
9files changed, 115 insertions(+), 6 deletions(-)
这些叠加的最后一层就是container,所以你在container里面改了文件,其实不会进image。一次完整的docker实作
说了那么多后,我们必须亲自动手玩了。下面把pull,run,build,push都玩一次,破除神秘感。一个典型的运行流程如下:1.client用pull命令从仓库把image拉到docker hostdocker pull的格式是:
docker pull[选项] [Docker Registry地址]
&仓库名&:&标签名&
默认地址是 DockerHub。 仓库名:这里的仓库名是两段式名称,既 / ,“/”前面一般是用户名。对于 Docker Hub,如果不给出用户名,则默认为 library ,也就是官方镜像。
下载 Ubuntu14.04的image(以Ubuntu为例):baohua@ubuntu:~$docker pull ubuntu:14.04
14.04:Pulling from library/ubuntu
c:Downloading [&
] 539.8 kB/65.69 MB
755da0cdb7d2:Download complete
969d017f67e6:Download complete
37c9a9113595:Download complete
a3d9f8479786:Download complete
运行docker images命令看看下载的images:$docker images
REPOSITORY
b969ab9f929b
4 weeksago
在docker host上面运行Ubuntu 14.04于containers
我们现在运行Ubuntu14.04中的bash shell,因为docker运行image于容器时,需要指定主进程(本例的主进程为bash)。
在终端1上面运行
docker run -it 在终端2上面运行docker run -it 这样我们就运行了ubuntu14.04这个image的2次实例(得到2个容器), Linux下面的ps命令是看进程的,docker下面就是看image的实例容器了。$ docker ps
CONTAINER ID
ubuntu:14.04
11seconds ago
Up 10 seconds
wizardly_elion
db1c25753e97
ubuntu:14.04
21seconds ago
Up 21 seconds
adoring_shannonimage和container之间的关系类似程序与进程之间的关系,一个静若处子,一个动如脱兔。比如程序QQ,运行一次就是1个QQ进程,再运行一个QQ就是第2个QQ进程。同样道理,一个image也可以运行多份container。3.构建自己的image现在想在Ubuntu 14.04中增加vim和gcc,构建一个增量image,因为目前的Ubuntu image里面没有这样的命令:root@e3a:/
bash: vim: command not found
于是在Ubuntu 14.04这个image基础上面,叠加一层,然后把它提交到docker hub的21cnbao的仓库。
我们需要在客户端电脑上面创建一个Dockerfile文件(该文件用于描述image),以实现在现有的Ubuntu 14.04上面做增量的目的。$ mkdir myubuntu
$ cd myubuntu/
$ touch Dockerfile
用vim编辑Dockerfile,添加如下内容:# ubuntu 14.04 with vim and gcc
FROM ubuntu:14.04
MAINTAINER Barry Song&21&
RUN apt-get update && apt-getinstall –y vim gcc
RUN 指令的含义是在指定在源image内执行一条命令,本例更新APT 缓存,并且安装vim和 gcc以形成一个增量image。
下面build这个image:$ docker build -t 21cnbao/myubuntu:14.04 .
time="T06:48:07+08:00"level=info msg="Unable to use system certificate pool: crypto/x509: systemroot pool is not available on Windows"
Sending build context to Docker daemon2.048 kB
Step 1/3 : FROM ubuntu:14.04
---& b969ab9f929b
Step 2/3 : MAINTAINER Barry Song&21cnbao@gmail.com&
---& Running in fc
---& 5dacd7a6ee5d
Removing intermediate containerfc
Step 3/3 : RUN apt-get update &&apt-get install vim gcc
---& Running in b1469caf3509
Ign http://archive.ubuntu.com trustyInRelease
Get:1 http://archive.ubuntu.comtrusty-updates InRelease [65.9 kB]
Get:2 http://archive.ubuntu.comtrusty-security InRelease [65.9 kB]
Get:3 http://archive.ubuntu.com trustyRelease.gpg [933 B]
Get:4 http://archive.ubuntu.com trustyRelease [58.5 kB]
Get:5 http://archive.ubuntu.comtrusty-updates/main Sources [485 kB]
下面运行21cnbao/myubuntu 14.04这个镜像:docker run -it 发现gcc和vim都有了:4.通过docker push把image提交到仓库在docker hub上面创建一个仓库myubuntu,该仓库创建后,全名将为21cnbao/myubuntu。
下面push这个image到docker hub,之前我们需要登录到docker hub:
下面开始push:$ docker push 21cnbao/myubuntu
time="T07:17:59+08:00"level=info msg="Unable to use system certificate pool: crypto/x509: systemroot pool is not available on Windows"
The pushrefers to a repository [docker.io/21cnbao/myubuntu]
87157b68b121:Pushing [&
] 1.109 MB/134.7 MB
c9fc:Pushing [==================================================&] 3.072 kB
ca893d4b83a6:Pushing [==================================================&] 4.608 kB
153bd22a8e96:Pushing 7.168 kB
83b:Pushing [==================================================&] 209.9 kB
918b1e79e358:Waiting
通过docker hub进哥的仓库看一眼,发现大功告成了。
2小时结束,相信你已经爱上Docker。相爱容易相处难,痛苦才刚刚开始。人生若只如初见,何事秋风悲画扇。等闲变却故人心,却道故人心易变。后面如果有时间,再完成一个《Docker 相处的8小时》。
随着Docker技术被越来越多的人所认可,其应用的范围也越来越广泛。该课程集中于Docker实践应用,不会过多纠结于细细微的理论分析,而是涵盖Docker最基本和常用的功能和命令,让学员在最短的时间内了解如何上手使用Docker,配合精心设计的范例,以及范例代码的演化过程,学员可以可以直观地看到Docker在实际项目中的应用,可能碰到的问题,如何解决,以及如何改进项目的开发过程。
目前群已满100人,添加微信号:csdn01,备注“Docker”即可入群!
没有更多推荐了,
加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!在Windows系统下安装docker窗口的配置过程
转载 &更新时间:日 17:18:55 & 投稿:daisy
相信大家都知道Docker有很多种安装的选择,其中支持最好的是Ubuntu系统。而且docker如果想在windows上运行必须借助docker-machine,这篇文章将给大家详细的介绍在Windows系统上安装docker窗口的配置过程,有需要的朋友们可以参考借鉴。
目前对docker支持最好的是Ubuntu系统,docker不支持在windows上运行,必须借助docker-machine。docker提供了toolbox用于在windows和mac平台安装docker。
工具箱包括:
&&&&& docker machine
&&&&& Docker Engine
&&&&& Kitematic
&&&&& docker命令行运行环境
&&&&& Oracle VM VirtualBox
安装之前需要检查BIOS中虚拟化的设置是否已打开,
1、下载安装文件
https://www.docker.com/toolbox
2、双击安装文件进行安装
3、运行docker run hello-world
运行时出现下面的问题
Post http://127.0.0.1:/containers/create: dial tcp 127.0.0.1:2375: ConnectEx tcp: No connection could be made because the target machine actively refused it..
* Are you trying to connect to a TLS-enabled daemon without TLS?
* Is your docker daemon up and running?
如下解决:
docker-machine regenerate-certs default
docker-machine restart default
显示环境变量:
$ docker-machine env default --shell sh
export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://192.168.99.100:2376"
export DOCKER_CERT_PATH="C:\Users\apex\.docker\machine\machines\default"
export DOCKER_MACHINE_NAME="default"
# Run this command to configure your shell:
# eval "$(E:\04_Program Files\docker_toolbox\Docker Toolbox\docker-machine.exe env default)"
设置环境变量:
eval "$(docker-machine env default --shell sh)"
再次运行:
$ docker run hello-world
Unable to find image 'hello-world:latest' locally
Pulling repository docker.io/library/hello-world
af: Pulling image (latest) from docker.io/library/hello-world
af: Pulling image (latest) from docker.io/library/hello-world, endpoint: https://registry-1.docker.io/v1/
af: Pulling dependent layers
e8ad: Pulling metadata
e8ad: Pulling fs layer
e8ad: Download complete
af: Pulling metadata
af: Pulling fs layer
af: Download complete
af: Download complete
Status: Downloaded newer image for hello-world:latest
Hello from Docker.
This message shows that your installation appears to be working correctly.
To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
3. The Docker daemon created a new container from that image which runs the
executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it
to your terminal.
To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash
Share images, automate workflows, and more with a free Docker Hub account:
https://hub.docker.com
For more examples and ideas, visit:
https://docs.docker.com/userguide/
配置加速器:
docker-machine ssh default
sudo sed -i "s|EXTRA_ARGS='|EXTRA_ARGS='--registry-mirror=http://efa65984.m.daocloud.io |g" /var/lib/boot2docker/profile
docker-machine restart default
docker用户的密码是tcuser
可用于winscp传输文件
以上就是在Windows系统上安装docker窗口的配置过程,文中给出了详细的步骤介绍,希望对大家的学习或者工作带来一定的帮助,如果有疑问大家可以留言交流。
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具

我要回帖

更多关于 docker windows 镜像 的文章

 

随机推荐