1.docker的安装

环境准备

Docker for Windows是一个Docker Community Edition(CE)应用程序。Docker for Windows安装包包含了在Windows系统上运行Docker所需的一切。如果你不想装虚拟机,想直接在你的Windows操作系统中安装与学习使用docker,那么你首先得查看你的系统是否满足Docker for Windows的安装与使用要求。

  1. Docker for Windows的当前版本运行在64位Windows 10 Pro,专业版、企业版和教育版(1607年纪念更新,版本14393或更高版本)上。Ps:家庭版是不行的,如果你是家庭版,那么一是升级到专业版,破解专业版推荐个地址:http://blog.csdn.net/SONGCHUNHONG/article/details/78006389 ,二是安装Docker Toolbox,自行网上百度http://blog.csdn.net/tina_ttl/article/details/51372604

  2. 如果你满足Docker for Windows的环境条件了,那么首先检查电脑的虚拟化开启了没有:进入任务管理器(ctrl+alt+delete),点击性能->cpu ,查看虚拟化是否已启用,如果虚拟化是已禁用,那么你需要重启电脑进入bios开启虚拟化(我们的发的笔记本cpu都是支持虚拟化的,重启时进入bios按esc -> 再按f12 -> 去开启虚拟化)

  3. 开启虚拟化重启后,进入任务管理器看虚拟化是否已启用.

  4. 4.然后再是进入电脑的控制面板->程序->启用或关闭Windows功能->把Hyper-v勾上,启用后电脑会重启,后面就可以下载并安装Docker for Windows了。


  5. 下载安装

    1. 进入网址https://docs.docker.com/docker-for-windows/install/#download-docker-for-windows 下载并安装。我安装的是稳定版。安装过程没什么要注意的。

3、启动以后会出现在桌面的右下角区域,鼠标放上去以后显示Docker is running表示启动成功,第一次安装启用好像是会弹出个Docker Cloud登录界面,去注册然后登录,使用和git有点类似,可以pull图像等等

2.docker的入门

开始使用

  1. 检查Docker,Compose和Machine的版本

3、运行docker run hello-world以测试从Docker Hub中拉取图像并启动容器:

4、 使用命令docker run -it ubuntu bash运行一个Ubuntu容器,我之前已经拉取过这个容器了,大概是几十兆吧,所以直接启用了,输入exit命令停止容器。

5、运行命令docker run -d -p 80:80 –name webserver nginx 启动一个Dockerized webserver 会下载nginx容器图像并启动它,然后再打开浏览器键入http://localhost

6、运行docker ps 命令,检查容器的详细信息:

7、停止或移除容器和图像。如果你想停止网络服务器,输入:docker stop webserver

  然后重新启动docker start webserver。要使用单个命令停止并删除正在运行的容器,请键入: docker rm -f webserver。这将删除容器,但不是 nginx图像。

  您可以列出本地图像docker images。你可能想要保留一些图片,这样你就不必再从Docker Hub中取出它们了。

  要删除不再需要的图像,请使用docker rmi后跟图像ID或图像名称。例如:docker rmi nginx

Settings:

找到右下角的docker图标,右击选择settings进去

  1. General:这里是设置docker开机自启,应用程序启动时检查更新,发布使用情况统计信息

  2. Advanced:分配cpu数量与内存量:

    3、 Daemon:Docker for windows10 可以配置阿里云镜像,到https://cr.console.aliyun.com/ 注册一个账户,登录进去后再列表选择加速器,把你的专属加速器地址复制粘贴到Daemon的Registry mirrors中:

用Dockerfile定义一个镜像:

创建一个空目录,我取名叫docker,然后分别在里面新建三个文件:Dockerfile,app.py,requirements.txt

三个文件中的内容分别设计为:

1.Dockerfile:
# Use an official Python runtime as a parent image
FROM python:2.7-slim # Set the working directory to /app
WORKDIR /app # Copy the current directory contents into the container at /app
ADD . /app # Install any needed packages specified in requirements.txt
RUN pip install --trusted-host pypi.python.org -r requirements.txt # Make port 80 available to the world outside this container
EXPOSE 80 # Define environment variable
ENV NAME World # Run app.py when the container launches
CMD ["python", "app.py"] 2.app.py:
from flask import Flask
from redis import Redis, RedisError
import os
import socket # Connect to Redis
redis = Redis(host="redis", db=0, socket_connect_timeout=2, socket_timeout=2) app = Flask(__name__) @app.route("/")
def hello():
try:
visits = redis.incr("counter")
except RedisError:
visits = "<i>cannot connect to Redis, counter disabled</i>" html = "<h3>Hello {name}!</h3>" \
"<b>Hostname:</b> {hostname}<br/>" \
"<b>Visits:</b> {visits}"
return html.format(name=os.getenv("NAME", "world"), hostname=socket.gethostname(), visits=visits) if __name__ == "__main__":
app.run(host='0.0.0.0', port=80) 3. requirements.txt:
Flask
Redis

构建镜像

在docker目录下打开cmd.exe运行命令(确保能够找到Dockerfile文件,镜像取名叫friendlyhello):
docker build -t friendlyhello .
ps:千万不要落了上面那行后面的那个点,曾经入过坑的。。命令包括后面的那个点:

然后再执行命令:
docker images:

运行镜像程序:
docker run -p 4000:80 friendlyhello

可以看到Python正在为应用程序提供消息的http://0.0.0.0:80。但是,这个消息来自容器内部,它不知道我们将该容器的端口80映射到4000,从而打开URL: http://localhost:4000

引用: https://blog.csdn.net/zzq060143/article/details/91050272

Win10中docker的安装与使用的更多相关文章

  1. WIN10中DOCKER的安装

    1.docker的安装 环境准备 Docker for Windows是一个Docker Community Edition(CE)应用程序.Docker for Windows安装包包含了在Wind ...

  2. 在Win10中,在安装msi安装包的时候常常会出现代码为2502、2503的错误。

    前言:在Win10中,在安装msi安装包的时候常常会出现代码为2502.2503的错误.其实这种错误是由于安装权限不足造成的,可以这种msi的安装包不像其他exe的安装程序,在安装包上点击“右键”之后 ...

  3. CentOS双机中Docker下安装Mysql并配置互为主从模式

    CentOS双机中Docker下安装Mysql并配置互为主从模式 目录 1.搜索镜像... 1 2.拉取镜像... 1 3.绑定端口: 1 4.配置文件(修改/etc/mysql/my.cnf文件): ...

  4. CentOS 7 中 Docker 的安装

    CentOS 7 中 Docker 的安装 Docker 软件包已经包括在默认的 CentOS-Extras 软件源里.因此想要安装 docker,只需要运行下面的 yum 命令: [root@loc ...

  5. centos中docker的安装

    之前学习docker的时候,是在windows上直接使用可执行文件安装的,最近需要在自己的服务器上安装docker,特此了解了一下如何安装,这里补一下. 小白学Docker之基础篇 小白学Docker ...

  6. win10中docker使用docker-compose启动报错:pywintypes.error: (2, 'CreateFile', '系统找不到指定的文件。')

    Traceback (most recent call last): File "docker\api\client.py", line 214, in _retrieve_ser ...

  7. CentOS 7 中 Docker 的安装和卸载

    安装Dokcer Docker 软件包已经包括在默认的 CentOS-Extras 软件源里.因此想要安装 docker,只需要运行下面的 yum 命令: [root@localhost ~]# yu ...

  8. win10中,vscode安装go插件排雷指南

    最近学习go,想着使用强大的vscode编写go,在安装go插件过程中,遇到了很多问题.下面记录解决方案. 1)win10环境,安装go,vscode,git 配置GOPATH环境变量,在我的电脑-& ...

  9. Ubuntu中Docker的安装与使用

    Ubuntu中安装Docker 更新ubuntu的apt源索引 sudo apt-get update 2.安装包允许apt通过HTTPS使用仓库 sudo apt-get install \ apt ...

  10. linux中docker容器安装vi命令详解

    在使用docker容器时,同时你docker里的系统正好是debian或ubuntu的时候,有时候里边没有安装vim,敲vim命令时提示说:vim: command not found,这个时候就需要 ...

随机推荐

  1. Django学习(三) 之 模板中标签的使用

    写在前面 最近看到稀土掘金在搞2023年终总结征文活动,一直想尝试投稿试试,周末我就花了近一下午时间写完初稿,然后周一.周二完成精读再改稿,感觉OK,昨晚凌晨第一时间在稀土掘金投稿. 结果,又发生了同 ...

  2. 【matlab混沌理论】1.5.洛伦兹模型的分析

    洛伦兹方程用于生成y变量的图.这是对三种y初始条件敏感依赖的一个例子. 1.洛伦兹吸引子的y敏感依赖的着色图 input: % 洛伦兹方程用于生成y变量的图.x和z的初始条件保持不变,但y的初始条件在 ...

  3. Javascript Ajax总结——其他跨域技术之服务器发送事件SSE

    SSE(server-Sent Events,服务器发送事件)是围绕只读Comet交互推出的API或者模式.SSE API创建到服务器的单向连接,服务器通过这个连接可以发送任意数量的数据.服务器响应的 ...

  4. 腾讯云服务器安装MySQL5.7基于xshell

    腾讯云服务器安装MySQL5.7基于xshell 下载MySQL57安装包 wget https://dev.mysql.com/get/mysql57-community-release-el7-1 ...

  5. 春秋云镜 - CVE-2022-28512

    Fantastic Blog (CMS)是一个绝对出色的博客/文章网络内容管理系统.它使您可以轻松地管理您的网站或博客,它为您提供了广泛的功能来定制您的博客以满足您的需求.它具有强大的功能,您无需接触 ...

  6. 2023河南省第五届“金盾信安杯”CRYPTO MISC 复现

    MISC 来都来了 题目 我的解答: 给了一个加密压缩包,010查看发现是伪加密,修改如下两部分: 头部和尾部的09分别改为00 然后解压得到: 尝试base64解码得到很零散的结果..大眼一看不知道 ...

  7. el-table 设置合并行或列时,显示错乱问题

    1. 需求效果图: 2. 接口数据格式: 点击查看代码 const list = [ { contractNo: "CAI-20220801001", contractItem: ...

  8. Linux 逻辑卷管理

    如果用标准分区在硬盘上创建了文件系统,为已有的文件系统添加额外的空间是一件十分痛苦的事情.只能在已有的硬盘上的可用空间范围内调整分区大小,如果硬盘空间不够的话,就只能换一个大容量的硬盘,然后手动将已有 ...

  9. RSA 加密算法

    RSA加密算法是一种非对称加密算法,在公开密钥加密和电子商业中被广泛使用.RSA是由罗纳德·李维斯特(Ron Rivest).阿迪·萨莫尔(Adi Shamir)和伦纳德·阿德曼(Leonard Ad ...

  10. maven系列:依赖管理和依赖范围

    目录 一.依赖管理 使用坐标导入jar包 使用坐标导入 jar 包 – 快捷方式 使用坐标导入 jar 包 – 自动导入 二.依赖范围 三.可选依赖 四.排除依赖 一.依赖管理 使用坐标导入jar包 ...