制作 Hello World 镜像上传到京东云镜像仓库

创建项目

一、创建文件

mkdir hellonode  #创建hellonode文件夹
cd hellonode/

二、创建 server.js

创建 server.js, 内容如下

var http = require('http');
var handleRequest = function(request, response) {
  console.log('Received request for URL: ' + request.url);
  response.writeHead(200);
  response.end('Hello World!');
};
var www = http.createServer(handleRequest);
www.listen(80);

三、运行并测试

安装 node.js

sudo apt-get install npm
sudo apt-get install nodejs #apt-get安装

sudo yum -y install nodejs  #yum安装

node -v                     #查看版本号验证安装

执行server.js文件

ndoe server.js

测试程序

curl 127.0.0.1:80

显示如下,说明运行成功

四、创建Docker镜像

在项目目录下创建Dockerfile文件

vim Dockerfile

编辑项目 Dockerfile

FROM node:latest
EXPOSE 80
COPY server.js .
CMD node server.js

构建镜像

docker build -t hello-node:v1 .

查看镜像

docker images

显示如下说明构建成功

上传该镜像到京东云镜像仓库

镜像仓库的具体操作指南请参照 京东云容器镜像仓库产品文档

前提条件

一、创建注册表

可以使用已有的注册表,也可以创建新的注册表。

  1. 打开控制台,选择弹性计算-容器镜像仓库-注册表,选择创建按钮
  2. 选择地域,支持华北-北京、华东-上海、华南-广州
  3. 填写名称,名称全局唯一且不支持修改;长度大于3个字符,且不能超过32字符;以小写字母数字开始和结尾,支持使用小写字母、数字、中划线(-)
  4. 描述非必填项,描述不能超过256个字符,不支持修改
  5. 注册表URI自动生成,规则为:注册表名称-地域缩写.jcr.service.jdcloud.com
  6. 点击确定

二、创建镜像仓库

可以使用已有的镜像仓库,也可以创建新的镜像仓库。

  1. 打开弹性计算-容器镜像仓库-镜像仓库,选择创建按钮
  2. 选择地域,支持华北-北京、华东-上海、华南-广州
  3. 选择所属注册表
  4. 填写名称,名称大于3个字符且不超过255个字符,同一注册表下名称唯一且不可修改;支持使用多级命名空间,命名空间以/分隔,各级命名空间不可为空,以小写字母数字开始和结尾,支持使用小写字母、数字、中划线(-),下划线( _ )
  5. 描述非必填项,描述不能超过256个字符,不支持修改
  6. 镜像仓库URI自动生成,注册表URI/镜像仓库名称
  7. 点击确定

三、获取临时令牌

  1. 打开弹性计算-容器镜像仓库-注册表,点击获取临时令牌,您可以使用临时令牌完成Docker客户端的授权认证;一个小时内最多申请5个临时令牌
  2. 设置临时令牌的有效期:默认为12小时;范围为1~24小时的整数。点击确定
  3. 弹窗“下载临时令牌”,单击“下载.xlsx文件”,将临时令牌下载到本地,文件名“registry名称-token.xlsx”。或者复制保存信息。  注:关闭后,无法再次获取临时令牌的Docker客户端登录命令

四、上传、下载镜像

  1. 建议使用Linux系统,如Centos、Ubuntu;安装最新版的京东云CLIDocker

  2. 例:注册表为myregistry-test,镜像仓库为myrepo,镜像版本号为latest,地域选择华北-北京为cn-north-1。用户可根据具体情况修改。

    使用京东云CLI获取登录指定注册表的临时令牌或在控制台获取临时令牌:

    配置KEY

    jdc configure add --profile default --access-key your-ak --secret-key your-sk
    

    显示如下说明配置成功

获取临时令牌

   jdc containerregistry get-authorization-token --region-id cn-north-1 --registry-name myregistry-test

显示如下说明获取成功

  1. 使用临时令牌,登录到京东云的注册表;如您使用京东云CLI获取临时令牌,请输入返回的Docker客户端登录命令:

    docker login -u jdcloud -p ********* myregistry-test-cn-north-1.jcr.service.jdcloud.com
    

    显示如下说明配置成功

  1. 将镜像推送到京东云镜像仓库,本地镜像例为hello-node:v1 标记待推送到京东云镜像仓库中的本地镜像:

    docker tag hello-node:v1 myregistry-test-cn-north-1.jcr.service.jdcloud.com/hello-node:v1
    

    创建镜像仓库hello-node

将已标记的镜像推送到京东云镜像仓库:

   docker push myregistry-test-cn-north-1.jcr.service.jdcloud.com/hello-node:v1

显示如下说明推送成功

  1. 从京东云镜像仓库拉取镜像:

    docker pull myregistry-test-cn-north-1.jcr.service.jdcloud.com/hello-node:v1
    

推送成功后,可以获取镜像 URI 在云鼎应用部署平台部署该镜像。

results matching ""

    No results matching ""

    results matching ""

      No results matching ""