容器镜像服务 SWR-上传镜像:二、构建镜像

时间:2025-04-28 16:15:09

二、构建镜像

  1. 在安装docker容器引擎的虚拟机上执行以下命令,下载2048应用的源码。

    git clone https://gitee.com/jorgensen/2048.git

    若提示“git: command not found”表示未安装Git工具,请先安装该工具(可使用yum install git命令)。

  2. 下载成功后,进入“2048”目录。

    cd 2048

  3. 修改Dockerfile文件。

    vim Dockerfile

    FROM nginx
    COPY . /usr/share/nginx/html
    
    EXPOSE 80
    CMD ["nginx", "-g", "daemon off;"]
    • FROM:指定基础镜像nginx。
    • COPY:将2048源码拷贝到容器内的“/usr/share/nginx/html”目录。
    • EXPOSE:暴露容器的80端口。
    • CMD:指定容器运行时的默认命令。

    “Esc”,输入:wq,保存并退出。

  4. 使用docker build命令构建镜像。

    docker build -t 2048 .

    其中,

    • -t表示给镜像加一个标签,也就是给镜像取名,这里镜像名为2048。
    • . 表示上下文路径,镜像构建命令将该路径下的所有内容打包给容器引擎帮助构建镜像。

  5. 执行以下命令,查看已成功构建的2048镜像,版本为默认的latest。

    docker images

    # docker images
    REPOSITORY   TAG       IMAGE ID       CREATED              SIZE
    2048         latest    8d421c503ed0   About a minute ago   134MB
    nginx        latest    dd34e67e3371   6 days ago           133MB

    您还可以看到一个nginx镜像,这个镜像是从镜像仓库下载下来,作为2048镜像的基础镜像使用的。

  6. (可选)运行容器镜像。

    镜像构建成功后,您可以执行docker run命令运行容器镜像。

    docker run -p 8080:80 2048

    docker run命令会启动一个容器,命令中-p是将虚拟机的8080端口映射到容器的80端口,即虚拟机的8080端口的流量会映射到容器的80端口,当您在本地机器的浏览器访问“http://E CS 的弹性公网IP:8080”时,就会访问到容器中,此时浏览器返回的内容就是2048应用页面。

support.huaweicloud.com/qs-swr/index.html