鲲鹏社区首页
中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助

创建Docker镜像

  1. 请参见获取工具获取DevKit命令行工具,同时下载毕昇JDK软件包。
  2. 在本地创建Dockerfile文件。文件内容示例如下:
     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    #创建基础镜像,以openEuler 22.03为例。 
    from openeuler/openeuler:22.03 
    ARG package_name=DevKit-CLI-x.x.x-Linux-Kunpeng
    
    #解压缩资源包。 
    ADD $package_name.tar.gz /usr/local/ 
    ADD bisheng-jdk-17.0.10-linux-aarch64.tar.gz /usr/local/ 
    
    #修改权限、属组,创建软链接。 
    RUN chown -R root:root /usr/local/$package_name/ && chown -R root:root /usr/local/bisheng-jdk-17.0.10/ && chmod -R 755 /usr/local/$package_name/ && chmod -R 755 /usr/local/bisheng-jdk-17.0.10 && ln -s /usr/local/$package_name/devkit /usr/local/bin && ln -s /usr/local/bisheng-jdk-17.0.10/bin/java /usr/local/bin 
    
    #如需开启SSH登录容器,可执行以下步骤,否则可跳过。注意需保证可访问外部网络。 
    RUN yum install -y net-tools shadow-utils passwd openssh-server && ssh-keygen -A 
    
    #如需使用普通用户,可执行以下步骤,否则可跳过。jenkins为用户名,123456xx为密码,请按需修改。 
    RUN useradd jenkins && echo "123456xx" | passwd jenkins --stdin && chown -R jenkins:jenkins /usr/local/$package_name/
     
    #取消bash超时。 
    RUN sed -i '/^export TMOUT=.*/d' /etc/bashrc
    

    package_name为解压后命令行工具整体压缩包名称。

    DevKit-CLI-x.x.x-Linux-Kunpeng中的x.x.x表示版本号。

  3. 下载完成后请将毕昇JDK17、DevKit命令行工具软件包和Dockerfile文件上传到工作节点上同一目录下。

    目录结构如下:

  4. 执行构建操作。
    1
    docker build -t devkit-cli -f ./Dockerfile .
    

    构建过程如下:

    回显示例如下表示构建成功:

  5. 查看构建成功的镜像。
    1
    docker image list
    

    查看构建成功的镜像相关信息:

  6. (可选)开启sshd。
    1. 创建容器,以容器名为devkit-cli-container为例,可根据实际情况进行修改。
      1
      docker run -it -d --name devkit-cli-container devkit-cli /bin/bash
      

      回显示例如下表示容器创建成功:

    2. 进入容器,devkit-cli-container为容器名,请和创建容器时的容器名保持一致。
      1
      docker exec -it devkit-cli-container /bin/bash 
      

      回显示例如下表示已成功进入容器:

    3. 开启SSH访问。
      1
      /usr/sbin/sshd
      
    4. 执行快捷键Ctrl+D退出容器,验证SSH连接是否正常。
      1
      ssh jenkins@172.17.0.5
      
      • jenkins为用户名,需和Dockerfile文件中的用户名保持一致。
      • 请执行ifconfig命令查看容器IP地址,172.17.0.5是容器IP地址,请根据实际情况进行修改。

      回显示例如下表示SSH连接成功: