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

docker使用(一)

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

编写一个 Dockerfile

  1. 编写一个 Dockerfile:Dockerfile 是一个文本文件,用于定义镜像的构建过程。在 Dockerfile 中,你可以指定基础镜像、安装软件、复制文件等操作。

java 复制代码
FROM node:18-alpine
WORKDIR /app
COPY . .
RUN yarn install --production
CMD ["node", "src/index.js"]

构建镜像

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

复制代码
   docker build -t <镜像名称> .

其中,<镜像名称> 是你想要给镜像起的名称,. 表示当前目录。[注意点不能省略]

构建失败

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

可能是docker版本错误或者下载出错

我的是刚下的,很大可能不是版本问题,于是清除docker缓存

复制代码
   docker system prune -a

结束后,继续进行docker构建命令

复制代码
  docker build -t <镜像名称> .

构建成功

运行镜像

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

复制代码
   docker run <镜像名称> 

或者

复制代码
docker run -dp 3000:3000 <镜像名称> 

这将在容器中运行你的镜像,并执行其中定义的操作。

运行成功

修改代码后再次构建

此时代码已经修改

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

使用命令获取容器的 ID

复制代码
docker ps

docker stop

我的container-id是9c845a155512

复制代码
docker stop <the-container-id>

停止成功

使用命令将其删除

docker rm 9c845a155512

删除成功

也可直接在仪表板进行删除

再次构建且构建成功!


相关推荐
程序员清风18 分钟前
阿里二面:Kafka 消费者消费消息慢(10 多分钟),会对 Kafka 有什么影响?
java·后端·面试
幼稚园的山代王18 分钟前
Prompt Enginering(提示工程)先进技术
java·人工智能·ai·chatgpt·langchain·prompt
周某某~27 分钟前
二.单例模式‌
java·单例模式·设计模式
摸鱼仙人~30 分钟前
深入理解Java单例模式:确保类只有一个实例
java·javascript·单例模式
hstar95271 小时前
三十五、面向对象底层逻辑-Spring MVC中AbstractXlsxStreamingView的设计
java·后端·spring·设计模式·架构·mvc
pengyu1 小时前
【Java设计原则与模式之系统化精讲:壹】 | 编程世界的道与术(实战指导篇)
java·后端·设计模式
日月星辰Ace1 小时前
JVM 垃圾回收简介
java
掉头发的王富贵1 小时前
Arthas神器入门:动态调试Java应用,轻松搞定生产环境Bug!
java·后端·debug
Java陈序员1 小时前
再见 Navicat!一款开源的 Web 数据库管理工具!
java·react.js·docker
知其然亦知其所以然2 小时前
RAG 结果太水?用 RRF + Reranker 重排,效果翻倍提升!
java·后端·llm