好看的移动端网站微信小程序官网开发

diannao/2026/1/25 17:32:16/文章来源:
好看的移动端网站,微信小程序官网开发,百度推广怎么收费标准,百度网址大全电脑版Docker 精通系列 Docker 精通之入门Docker 精通之微服务Docker 精通之常用命令Docker 精通之 Dockerfile 2013年发布至今#xff0c; Docker 一直广受瞩目#xff0c;被认为可能会改变软件行业。 但是#xff0c;许多人并不清楚 Docker 到底是什么#xff0c;要解决什么问…Docker 精通系列 Docker 精通之入门Docker 精通之微服务Docker 精通之常用命令Docker 精通之 Dockerfile 2013年发布至今 Docker 一直广受瞩目被认为可能会改变软件行业。 但是许多人并不清楚 Docker 到底是什么要解决什么问题好处又在哪里本文就来详细解释帮助大家理解它还带有简单易懂的实例教你如何将它用于日常开发。 一、环境配置的难题 软件开发最大的麻烦事之一就是环境配置。用户计算机的环境都不相同你怎么知道自家的软件能在那些机器跑起来 用户必须保证两件事操作系统的设置各种库和组件的安装。只有它们都正确软件才能运行。举例来说安装一个 Python 应用计算机必须有 Python 引擎还必须有各种依赖可能还要配置环境变量。 如果某些老旧的模块与当前环境不兼容那就麻烦了。开发者常常会说它在我的机器可以跑了It works on my machine言下之意就是其他机器很可能跑不了。 环境配置如此麻烦换一台机器就要重来一次旷日费时。很多人想到能不能从根本上解决问题软件可以带环境安装也就是说安装的时候把原始环境一模一样地复制过来。 二、虚拟机 虚拟机virtual machine就是带环境安装的一种解决方案。它可以在一种操作系统里面运行另一种操作系统比如在 Windows 系统里面运行 Linux 系统。应用程序对此毫无感知因为虚拟机看上去跟真实系统一模一样而对于底层系统来说虚拟机就是一个普通文件不需要了就删掉对其他部分毫无影响。 虽然用户可以通过虚拟机还原软件的原始环境。但是这个方案有几个缺点 1资源占用多。虚拟机会独占一部分内存和硬盘空间。它运行的时候其他程序就不能使用这些资源了。哪怕虚拟机里面的应用程序真正使用的内存只有 1MB虚拟机依然需要几百 MB 的内存才能运行。 2冗余步骤多。虚拟机是完整的操作系统一些系统级别的操作步骤往往无法跳过比如用户登录。 3启动慢。启动操作系统需要多久启动虚拟机就需要多久。可能要等几分钟应用程序才能真正运行。 三、Linux 容器 由于虚拟机存在这些缺点Linux 发展出了另一种虚拟化技术Linux 容器Linux Containers缩写为 LXC。 Linux 容器不是模拟一个完整的操作系统而是对进程进行隔离。或者说在正常进程的外面套了一个保护层。对于容器里面的进程来说它接触到的各种资源都是虚拟的从而实现与底层系统的隔离。由于容器是进程级别的相比虚拟机有很多优势 1启动快。容器里面的应用直接就是底层系统的一个进程而不是虚拟机内部的进程。所以启动容器相当于启动本机的一个进程而不是启动一个操作系统速度就快很多。 2资源占用少。容器只占用需要的资源不占用那些没有用到的资源虚拟机由于是完整的操作系统不可避免要占用所有资源。另外多个容器可以共享资源虚拟机都是独享资源。 3体积小。容器只要包含用到的组件即可而虚拟机是整个操作系统的打包所以容器文件比虚拟机文件要小很多。 总之容器有点像轻量级的虚拟机能够提供虚拟化的环境但是成本开销小得多。 四、Docker 是什么 Docker 属于 Linux 容器的一种封装提供简单易用的容器使用接口。它是目前最流行的 Linux 容器解决方案。 Docker 将应用程序与该程序的依赖打包在一个文件里面。运行这个文件就会生成一个虚拟容器。程序在这个虚拟容器里运行就好像在真实的物理机上运行一样。有了 Docker就不用担心环境问题。 总体来说Docker 的接口相当简单用户可以方便地创建和使用容器把自己的应用放入容器。容器还可以进行版本管理、复制、分享、修改就像管理普通的代码一样。 五、Docker 的用途 Docker 的主要用途目前有三大类。 1提供一次性的环境。比如本地测试他人的软件、持续集成的时候提供单元测试和构建的环境。 2提供弹性的云服务。因为 Docker 容器可以随开随关很适合动态扩容和缩容。 3组建微服务架构。通过多个容器一台机器可以跑多个服务因此在本机就可以模拟出微服务架构。 六、Docker 的安装 Docker 是一个开源的商业产品有两个版本社区版Community Edition缩写为 CE和企业版Enterprise Edition缩写为 EE。企业版包含了一些收费服务个人开发者一般用不到。下面的介绍都针对社区版。 Docker CE 的安装请参考官方文档。 MacWindowsUbuntuDebianCentOSFedora其他 Linux 发行版 安装完成后运行下面的命令验证是否安装成功。 $ docker version # 或者 $ docker info Docker 需要用户具有 sudo 权限为了避免每次命令都输入sudo可以把用户加入 Docker 用户组官方文档。  $ sudo usermod -aG docker $USER Docker 是服务器----客户端架构。命令行运行docker命令的时候需要本机有 Docker 服务。如果这项服务没有启动可以用下面的命令启动官方文档  # service 命令的用法 $ sudo service docker start# systemctl 命令的用法 $ sudo systemctl start docker 六、image 文件 Docker 把应用程序及其依赖打包在 image 文件里面。只有通过这个文件才能生成 Docker 容器。image 文件可以看作是容器的模板。Docker 根据 image 文件生成容器的实例。同一个 image 文件可以生成多个同时运行的容器实例。 image 是二进制文件。实际开发中一个 image 文件往往通过继承另一个 image 文件加上一些个性化设置而生成。举例来说你可以在 Ubuntu 的 image 基础上往里面加入 Apache 服务器形成你的 image。 # 列出本机的所有 image 文件。 $ docker image ls# 删除 image 文件 $ docker image rm [imageName] image 文件是通用的一台机器的 image 文件拷贝到另一台机器照样可以使用。一般来说为了节省时间我们应该尽量使用别人制作好的 image 文件而不是自己制作。即使要定制也应该基于别人的 image 文件进行加工而不是从零开始制作。 为了方便共享image 文件制作完成后可以上传到网上的仓库。Docker 的官方仓库 Docker Hub 是最重要、最常用的 image 仓库。此外出售自己制作的 image 文件也是可以的。 七、实例hello world 下面我们通过最简单的 image 文件hello world感受一下 Docker。 需要说明的是国内连接 Docker 的官方仓库很慢还会断线需要将默认仓库改成国内的镜像网站具体的修改方法在下一篇文章的第一节。 首先运行下面的命令将 image 文件从仓库抓取到本地。 $ docker image pull library/hello-world # docker image pull是抓取 image 文件的命令。library/hello-world是 image 文件在仓库里面的位置其中library是 image 文件所在的组hello-world是 image 文件的名字 由于 Docker 官方提供的 image 文件都放在library组里面所以它的是默认组可以省略。因此上面的命令可以写成下面这样。 $ docker image pull hello-world 抓取成功以后就可以在本机看到这个 image 文件了。 $ docker image ls 现在运行这个 image 文件。 $ docker container run hello-world # docker container run具有自动抓取 image 文件的功能。如果发现本地没有指定的 image 文件就会从仓库自动抓取。因此前面的docker image pull命令并不是必需的步骤。然后生成一个正在运行的容器实例。 如果运行成功你会在屏幕上读到下面的输出。 $ docker container run hello-worldHello from Docker! This message shows that your installation appears to be working correctly. ... ... 输出这段提示以后hello world就会停止运行容器自动终止。 有些容器不会自动终止因为提供的是服务。比如安装运行 Ubuntu 的 image就可以在命令行体验 Ubuntu 系统。 $ docker container run -it ubuntu bash 对于那些不会自动终止的容器必须使用docker container kill 命令手动终止。 $ docker container kill [containID] 八、容器文件 image 文件生成的容器实例本身也是一个文件称为容器文件。也就是说一旦容器生成就会同时存在两个文件 image 文件和容器文件。而且关闭容器并不会删除容器文件只是容器停止运行而已。 # 列出本机正在运行的容器 $ docker container ls# 列出本机所有容器包括终止运行的容器 $ docker container ls --all 上面命令的输出结果之中包括容器的 ID。很多地方都需要提供这个 ID比如上一节终止容器运行的docker container kill命令。 终止运行的容器文件依然会占据硬盘空间可以使用docker container rm命令删除。 $ docker container rm [containerID] 运行上面的命令之后再使用docker container ls --all命令就会发现被删除的容器文件已经消失了。 九、Dockerfile 文件 学会使用 image 文件以后接下来的问题就是如何可以生成 image 文件如果你要推广自己的软件势必要自己制作 image 文件。 这就需要用到 Dockerfile 文件。它是一个文本文件用来配置 image。Docker 根据 该文件生成二进制的 image 文件。 下面通过一个实例演示如何编写 Dockerfile 文件。 十、实例制作自己的 Docker 容器 下面我以 koa-demos 项目为例介绍怎么写 Dockerfile 文件实现让用户在 Docker 容器里面运行 Koa 框架。 作为准备工作请先下载源码。 $ git clone https://github.com/ruanyf/koa-demos.git $ cd koa-demos 10.1 编写 Dockerfile 文件 首先在项目的根目录下新建一个文本文件.dockerignore写入下面的内容。 .git node_modules npm-debug.log 上面代码表示这三个路径要排除不要打包进入 image 文件。如果你没有路径要排除这个文件可以不新建。 然后在项目的根目录下新建一个文本文件 Dockerfile写入下面的内容。 FROM node:8.4 COPY . /app WORKDIR /app RUN npm install --registryhttps://registry.npm.taobao.org EXPOSE 3000 上面代码一共五行含义如下。 FROM node:8.4该 image 文件继承官方的 node image冒号表示标签这里标签是8.4即8.4版本的 node。COPY . /app将当前目录下的所有文件除了.dockerignore排除的路径都拷贝进入 image 文件的/app目录。WORKDIR /app指定接下来的工作路径为/app。RUN npm install在/app目录下运行npm install命令安装依赖。注意安装后所有的依赖都将打包进入 image 文件。EXPOSE 3000将容器 3000 端口暴露出来 允许外部连接这个端口。 10.2 创建 image 文件 有了 Dockerfile 文件以后就可以使用docker image build命令创建 image 文件了。 $ docker image build -t koa-demo . # 或者 $ docker image build -t koa-demo:0.0.1 . 上面代码中-t参数用来指定 image 文件的名字后面还可以用冒号指定标签。如果不指定默认的标签就是latest。最后的那个点表示 Dockerfile 文件所在的路径上例是当前路径所以是一个点。 如果运行成功就可以看到新生成的 image 文件koa-demo了。 $ docker image ls 10.3 生成容器 docker container run命令会从 image 文件生成容器。 $ docker container run -p 8000:3000 -it koa-demo /bin/bash # 或者 $ docker container run -p 8000:3000 -it koa-demo:0.0.1 /bin/bash 上面命令的各个参数含义如下 -p参数容器的 3000 端口映射到本机的 8000 端口。-it参数容器的 Shell 映射到当前的 Shell然后你在本机窗口输入的命令就会传入容器。koa-demo:0.0.1image 文件的名字如果有标签还需要提供标签默认是 latest 标签。/bin/bash容器启动以后内部第一个执行的命令。这里是启动 Bash保证用户可以使用 Shell。 如果一切正常运行上面的命令以后就会返回一个命令行提示符。 root66d80f4aaf1e:/app# 这表示你已经在容器里面了返回的提示符就是容器内部的 Shell 提示符。执行下面的命令。 root66d80f4aaf1e:/app# node demos/01.js 这时Koa 框架已经运行起来了。打开本机的浏览器访问 http://127.0.0.1:8000网页显示Not Found这是因为这个 demo 没有写路由。 这个例子中Node 进程运行在 Docker 容器的虚拟环境里面进程接触到的文件系统和网络接口都是虚拟的与本机的文件系统和网络接口是隔离的因此需要定义容器与物理机的端口映射map。 现在在容器的命令行按下 Ctrl c 停止 Node 进程然后按下 Ctrl d 或者输入 exit退出容器。此外也可以用docker container kill终止容器运行。 # 在本机的另一个终端窗口查出容器的 ID $ docker container ls# 停止指定的容器运行 $ docker container kill [containerID] 容器停止运行之后并不会消失用下面的命令删除容器文件。 # 查出容器的 ID $ docker container ls --all# 删除指定的容器文件 $ docker container rm [containerID] 也可以使用docker container run命令的--rm参数在容器终止运行后自动删除容器文件 $ docker container run --rm -p 8000:3000 -it koa-demo /bin/bash10.4 CMD 命令 上一节的例子里面容器启动以后需要手动输入命令node demos/01.js。我们可以把这个命令写在 Dockerfile 里面这样容器启动以后这个命令就已经执行了不用再手动输入了。 FROM node:8.4 COPY . /app WORKDIR /app RUN npm install --registryhttps://registry.npm.taobao.org EXPOSE 3000 CMD node demos/01.js 上面的 Dockerfile 里面多了最后一行CMD node demos/01.js它表示容器启动后自动执行node demos/01.js。 你可能会问RUN命令与CMD命令的区别在哪里简单说RUN命令在 image 文件的构建阶段执行执行结果都会打包进入 image 文件CMD命令则是在容器启动后执行。另外一个 Dockerfile 可以包含多个RUN命令但是只能有一个CMD命令。 注意指定了CMD命令以后docker container run命令就不能附加命令了比如前面的/bin/bash否则它会覆盖CMD命令。现在启动容器可以使用下面的命令。 $ docker container run --rm -p 8000:3000 -it koa-demo:0.0.1 10.5 发布 image 文件 容器运行成功后就确认了 image 文件的有效性。这时我们就可以考虑把 image 文件分享到网上让其他人使用。 首先去 hub.docker.com 或 cloud.docker.com 注册一个账户。然后用下面的命令登录。 $ docker login 接着为本地的 image 标注用户名和版本。 $ docker image tag [imageName] [username]/[repository]:[tag] # 实例 $ docker image tag koa-demos:0.0.1 ruanyf/koa-demos:0.0.1 也可以不标注用户名重新构建一下 image 文件。 $ docker image build -t [username]/[repository]:[tag] . 最后发布 image 文件。 $ docker image push [username]/[repository]:[tag]发布成功以后登录 hub.docker.com就可以看到已经发布的 image 文件。 十一、其他有用的命令 docker 常用命令

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/88246.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

湖南响应式网站建设费用2008 iis7添加网站

为什么要支持confd,老的应用配置管理模式是启动时读取配置文件,然后重新读取配置文件需要应用重启。一般的配置管理系统都是代码侵入性的,应用接入配置管理系统都需要使用对应的SDK来查询和监听数据的变更。对于一些已经成熟的系统来说&#…

自用网站开发费用会计分录开发工具在哪里 word

1.节点 想要获取网页中的数据,首先要获取网页 HTML 代码,再把数据从中提取出来。 我们要向网页的服务器发送请求,服务器返回的响应就是网页 HTML 代码 节点 (1)文档节点:就是文档的内容; &a…

茶叶网站建设模板农村基本制度建设网站

前言 总是三分钟热度的我折腾了一个可以每天自动截取指定网站页面并保存到Github的项目SiteHistory,感觉挺好(每次都这样 frameborder"0" scrolling"no" style"border-width: initial; border-style: none; width: 25px; height: 26px;&qu…

内网网站建设工作会议网站调用字体库

OpenGL帧缓冲区和帧缓冲区对象 Framebuffers and Framebuffer Objects 帧缓冲区的结构和组成,以及与默认帧缓冲区和帧缓冲对象相关的管理和属性。 帧缓冲区结构: 帧缓冲区由像素组成,排列成二维数组,每个像素由一定数量的位组成。…

网站上实用的h5特效建筑设计资料集

文章目录 Mybatis Plus自带分页和PageHelper有什么区别?Mybatis Plus整合PageHelper分页 springboot自定义拦截器获取分页参数spring boot下配置mybatis-plus分页插件单表分页查询自定义sql分页查询PageHelper 参考 Mybatis Plus自带分页和PageHelper有什么区别&…

wordpress短信通知上海做网站seo

1 中介者模式的基本概念 C中的中介者模式(Mediator Pattern)是一种行为型设计模式,主要用于降低多个对象和类之间的通信复杂性。这种模式通过引入一个中介类来封装和处理不同类之间的通信,从而实现松耦合,使代码更易于…

做育儿类网站用什么程序好深圳高端写字楼

“Allins正在通过全新的AMM方案为BRC20及多链铭文资产拓展DeFi场景,官网的全新上线意味着铭文资产的交易正式进入AMM时代。” 在2023年1月开始,Ordinals协议的推出成为了铭文赛道发展的开端,并为比特币这类非图灵完备的生态,带来了…

免费做h5的网站有哪些朔州建设机械网站

alipay.fund.trans.tobank.transfer(单笔转账到银行账户接口) 小程序文档 - 支付宝文档中心 一、下载支付宝SDK,现有版本v1、v2、v3 https://github.com/alipay/alipay-sdk-php-all github 慢的话,DNS 直达即可 140.82.112.3 github.com 【host文…

php做用户登录网站企业所得税怎么征收2022政策

人工智能工具使公司能够共享候选药物数据,同时保证敏感信息的安全,可以释放机器学习和尖端实验室技术的潜力,以实现共同利益。来自:AI can help to speed up drug discovery — but only if we give it the right data, nature, 2023 目录 研究内容生物科技与AI联邦学习主动…

网站备案每年审吗网站建设费属于哪个会计科目

现代城市作为一个复杂系统,牵一发而动全身,城市化进程中产生新的矛盾和社会问题都会影响整个城市系统的正常运转。智慧城市是应对这些问题的策略之一。城市工作要树立系统思维,从构成城市诸多要素、结构、功能等方面入手,系统推进…

如何给网站加二级域名网站可以用什么做

Oracle从入门到总裁:​​​​​​https://blog.csdn.net/weixin_67859959/article/details/135209645 INSTEAD OF 触发器,也称替换触发器,是一种特殊的触发器,和其他建立在数据表上的触发器不同,INSTEAD OF 触发器建立在视图上。…

怎么选择郑州网站建设wordpress怎样切换语言

编码&解码 1:I/O操作 2:内存 3:数据库 4:javaWeb 下面主要介绍前面两种场景,数据库部分只要设置正确编码格式就不会有什么问题,javaWeb场景过多需要了解URL、get、POST的编码,servlet的解码…

企业网站的搭建流程wordpress 主域名

tcp协议本身是可靠的,并不等于应用程序用tcp发送数据就一定是可靠的.不管是否阻塞,send发送的大小,并不代表对端recv到多少的数据 在阻塞模式下, send函数的过程是将应用程序请求发送的数据拷贝到发送缓存中发送并得到确认后再返回.但由于发送缓存的存在,表现为:如果发送缓存大…

网站下载的网页修改下面版权所有苏州市城乡建设局网站

vscode安装插件:JavaScript Debugger (Nightly) 点击后生成一个launch.json文件 打断点,并发送一个请求来执行代码到断点处 按右上的向下箭头,进入源码,进行查看,左边查看变量等值

乐昌北京网站建设嘉兴免费自助建站模板

1作家李尚龙说:“在大城市里,搞废一个人的方式特别简单。给你一个安静狭小的空间,给你一根网线,最好再加一个外卖电话。好了,你开始废了。”之前的我并不相信人会这么轻易地堕落,直到身边出现了一个真实的例…

某服装公司网站建设论文php网站开发案例论文

目录 1.nacos环境搭建nacos安装 2.项目主体结构6.2)表结构分析6.4)**运营端微服务搭建**6.4)登录功能实现 7)接口工具postman、swagger、knife4j7.1)postman7.2)swagger7.3)knife4j 8)网关9)前端集成9.1)前端项目部署思路9.2)配置nginx 1.nacos环境搭建 nacos安装 ①&#xf…

职业培训学校seo视频教程汇总

1. 题目 输入数字 n,按顺序打印出从 1 到最大的 n 位十进制数。比如输入 3,则打印出 1、2、3 一直到最大的 3 位数 999。 示例 1: 输入: n 1 输出: [1,2,3,4,5,6,7,8,9]说明: 用返回一个整数列表来代替打印 n 为正整数来源:力扣…

个人网站 不用备案兴县做网站

文章目录 前言Job的基本概念什么是Job?Job的主要作用 Job的详细示例示例:运行批量处理任务的JobJob的定义创建Job查看Job状态查看任务执行日志任务的重试 Job的最佳实践 结论 前言 Kubernetes(K8s)作为领先的容器编排平台&#x…

河北网站seo地址东营有网站

HTML5 新标签总汇 2010-12-16 20:44 聂微东 阅读(5060) 评论(8) 编辑 收藏 HTML5新标签总汇&#xff1a; 有问题欢迎指出,有关于CSS3方面的知识点较多,下周一前整理出来. <article> 标签定义外部的内容&#xff08;外部内容如blog,news&#xff09;。     …

使用oss图片做网站企业网站开发用什么语言写

8.3string流 sstream头文件定义了三个类型来支持内存IO,这些类型可以向string写入数据,从string读取数据&#xff0c;就像string是一个IO流一样。istringstream从string读取数据&#xff0c;ostringstream向string写入数据&#xff0c;而头文件stringstream既可从string读数据…