当前位置: 首页 > news >正文

课程网站开发与设计本科自考第二专业

课程网站开发与设计,本科自考第二专业,软件推广公司,logo生成器免费版软件开发最大的麻烦事之一,就是环境配置。用户必须保证操作系统的设置,各种库和组件的安装,只有它们都正确,软件才能运行。docker从根本上解决问题,软件安装的时候,把原始环境一模一样地复制过来。 以 koa-…

        软件开发最大的麻烦事之一,就是环境配置。用户必须保证操作系统的设置,各种库和组件的安装,只有它们都正确,软件才能运行。docker从根本上解决问题,软件安装的时候,把原始环境一模一样地复制过来。

        以 koa-demos 项目为例,介绍怎么写 Dockerfile 文件,实现让用户在 Docker 容器里面运行 Koa 框架。准备工作,下载源码:git clone https://github.com/ruanyf/koa-demos.git cd koa-demos

1、编写 Dockerfile 文件

        首先,在项目的根目录下,新建一个文本文件.dockerignore,写入下面的内容。

.git node_modules npm-debug.log

        上面代码表示,这三个路径要排除,不要打包进入image文件。如果你没有路径要排除,这个文件可以不新建。

        然后,在项目的根目录下,新建一个文本文件 Dockerfile,写入下面的内容。

FROM node:8.4 
COPY . /app WORKDIR /app 
RUN npm install --registry=https://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 端口暴露出来, 允许外部连接这个端口。

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

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

        如果一切正常,运行上面的命令以后,就会返回一个命令行提示符。

root@66d80f4aaf1e:/app#

        这表示你已经在容器里面了,返回的提示符就是容器内部的 Shell 提示符。执行下面的命令。

root@66d80f4aaf1e:/app# node demos/01.js

        这时,Koa 框架已经运行起来了。打开本机的浏览器,访问 http://127.0.0.1:8000,网页显示"Not Found",这是因为这个 demo 没有写路由。

4、CMD 命令

        上一节的例子里面,容器启动以后,需要手动输入命令node demos/01.js。我们可以把这个命令写在 Dockerfile 里面,这样容器启动以后,这个命令就已经执行了,不用再手动输入了。

FROM node:8.4 
COPY . /app WORKDIR /app 
RUN npm install --registry=https://registry.npm.taobao.org 
EXPOSE 3000 
CMD node demos/01.js # 容器启动后执行命令,一个容器只能有一个CMD命令.

        上面的 Dockerfile 里面,多了最后一行CMD node demos/01.js,它表示容器启动后自动执行node demos/01.js。

        注意,指定了CMD命令以后,docker container run命令就不能附加命令了(比如前面的/bin/bash),否则它会覆盖CMD命令。现在,启动容器可以使用下面的命令。

docker container run --rm -p 8000:3000 -it koa-demo:0.0.1

5、测试demo

        在ubuntu 21.04最小系统上,运行hello.sh文件,运行方式./hello.sh,文件内容:

#hello.sh 
echo "hello docker"        

        Dockerfile基本结构:

FROM ubuntu:21.04 
ADD hello.sh / 
CMD ["./hello.sh"]

        镜像的构建,-t:tag指定镜像名称和版本:

docker image build -t hello.sh:1.0 .

        构建过程截图:

http://www.yayakq.cn/news/278515/

相关文章:

  • 本科软件开发专业网站首页排名seo搜索优化
  • 中国移动门户网站做系统前的浏览网站能找回吗
  • 国家工程建设标准化网站短网址缩短
  • 第一次做网站没头绪ckeditor wordpress 无法预览文章
  • 做的很好的网站外贸seo软件
  • 郑州网站建设品牌长春网络公司
  • 免费的手机网站模板自己怎么健网站视频下载
  • 如何推广自己的外贸网站网络推广的优势
  • 淘宝客怎么建网站在东莞找工作上哪个网站
  • 机电网站建设个人网站备案后可以随意建站吗
  • 娄底市建设网站wordpress页脚菜单横排
  • 网站推广的企业广州网站开发
  • 微信手机网站搭建自己开发微网站
  • 电商购物网站开发需求分析域名seo查询
  • 汕头建设网站微信公众号设计与布局
  • 十大接单网站网站域名备案主机名
  • 盛世阳光-网站建设wordpress 英文版
  • 商务互联 网站全网营销和网站建设
  • 校园二手市场网站建设方案住房和城乡建设部网站主页
  • 石家庄商城网站建设网络广告电话
  • 做网站需要编码吗浙江建设局网站首页
  • 一级a做爰片免费视频网站网站地图的使用
  • 莱芜网站建设价格重写路由 wordpress
  • 佛山网站定制开发小鱼儿网站做啥用的
  • 网站开发培训费多少wordpress如何用
  • 设计师工作内容aso关键词排名优化是什么
  • 网站改版需要多久域名购买网站有哪些
  • ui作品集 网站怎么做广州seo怎么做
  • 教育培训门户网站模板下载做网站创意
  • app免费下载网站地址进入网站建设费用分析