docker使用(一)生成,启动,更新(容器暂停,删除,再生成)

docker使用(一)

  • 编写一个 Dockerfile
  • 构建镜像
    • 构建失败
    • 构建成功
  • 运行镜像
    • 运行成功
  • 修改代码后再次构建
  • 请不要直接进行构建,要将原有的旧容器删除或暂停
    • 停止成功
    • 删除成功
    • 再次构建且构建成功!

要创建一个镜像,你可以按照以下步骤进行操作:

编写一个 Dockerfile

  1. 编写一个 Dockerfile:Dockerfile 是一个文本文件,用于定义镜像的构建过程。在 Dockerfile 中,你可以指定基础镜像、安装软件、复制文件等操作。
    docker使用(一)生成,启动,更新(容器暂停,删除,再生成)_第1张图片
    docker使用(一)生成,启动,更新(容器暂停,删除,再生成)_第2张图片
FROM node:18-alpine
WORKDIR /app
COPY . .
RUN yarn install --production
CMD ["node", "src/index.js"]

构建镜像

构建镜像:使用 docker build 命令来构建镜像。在命令行中,进入 Dockerfile 所在的目录,然后运行以下命令:

   docker build -t <镜像名称> .

其中,<镜像名称> 是你想要给镜像起的名称,. 表示当前目录。[注意点不能省略]
在这里插入图片描述

构建失败

docker使用(一)生成,启动,更新(容器暂停,删除,再生成)_第3张图片

failed commit on ref "layer-sha256:7264a8db6415046d36d16ba98b79778e18accee6ffa71850405994cffa9be7de": "layer-sha256:7264a8db6415046d36d16ba98b79778e18accee6ffa71850405994cffa9be7de" failed
 size validation: 0 != 3401613: failed precondition

可能是docker版本错误或者下载出错
我的是刚下的,很大可能不是版本问题,于是清除docker缓存

   docker system prune -a

docker使用(一)生成,启动,更新(容器暂停,删除,再生成)_第4张图片
结束后,继续进行docker构建命令

  docker build -t <镜像名称> .

构建成功

docker使用(一)生成,启动,更新(容器暂停,删除,再生成)_第5张图片

运行镜像

运行镜像:构建成功后,你可以使用 docker run 命令来运行镜像。例如:

   docker run <镜像名称> 

或者

docker run -dp 3000:3000 <镜像名称> 

这将在容器中运行你的镜像,并执行其中定义的操作。
docker使用(一)生成,启动,更新(容器暂停,删除,再生成)_第6张图片

运行成功

docker使用(一)生成,启动,更新(容器暂停,删除,再生成)_第7张图片

修改代码后再次构建

此时代码已经修改

请不要直接进行构建,要将原有的旧容器删除或暂停

使用命令获取容器的 ID

docker ps

在这里插入图片描述
docker stop
我的container-id是9c845a155512

docker stop 

停止成功

docker使用(一)生成,启动,更新(容器暂停,删除,再生成)_第8张图片
使用命令将其删除
docker rm 9c845a155512
docker使用(一)生成,启动,更新(容器暂停,删除,再生成)_第9张图片

删除成功

docker使用(一)生成,启动,更新(容器暂停,删除,再生成)_第10张图片
也可直接在仪表板进行删除
docker使用(一)生成,启动,更新(容器暂停,删除,再生成)_第11张图片

再次构建且构建成功!

docker使用(一)生成,启动,更新(容器暂停,删除,再生成)_第12张图片
docker使用(一)生成,启动,更新(容器暂停,删除,再生成)_第13张图片

你可能感兴趣的:(后端,docker,java,容器)